Docker安裝及基本命令
安裝/啟動Docker
在CentOS 7上安裝
Docker預設已經包含在CentOS-Extra倉庫中,使用以下命令安裝
sudo yum install docker
在CentOS 6.5上安裝
對於CentOS 6.5,Docker是 EPEL 倉庫的一部分,因此需要確保已經加入EPEL的YUM源。在CentOS 6上,Docker的包名可能與桌面的docker應用衝突,因此,它的包名改為了docker-io
。
sudo yum -y remove docker
sudo yum install docker-io
啟動Docker
安裝Docker之後,需要啟動Docker守護程式
sudo service docker start
為了讓docker能夠開機執行,需要使用chkconfig:
sudo chkconfig docker on
獲取Docker映象,啟動Docker容器
sudo docker pull centos
sudo docker images centos
sudo docker run -i -t centos /bin/bash
基本命令
下列命令建立一個容器簡單的輸出Hello world:
$ docker run ubuntu:14.04 /bin/echo 'Hello, world'
Hello, world
這裡docker run
命令指定了使用的映象為ubuntu:14.04
,我們的容器就是從該映象執行。當指定一個映象的時候,Docker首先會在你的宿主機上查詢是否存在該映象,如果不存在的話會從Docker Hub下載。
接下來指定了要在容器中執行的命令是/bin/echo 'Hello, world'
,當容器啟動之後,Docker會建立一個新的ubuntu 14.04的環境,然後在裡面執行這個命令。當命令執行完畢之後,Docker建立的這個容器的生命週期就結束了。
下面我們建立一個互動式的容器:
$ docker run -t -i ubuntu:14.04 /bin/bash
root@af8bae53bdd3:/#
這次同樣啟動了ubuntu 14.04的映象,但是這裡指定了兩個額外的引數-t
和-i
。引數-t
為剛才建立的容器分配一個偽終端(pseudo-tty),-i
則允許我們通過獲取容器的標準輸入建立一個互動式的連線。
要退出該容器,在終端輸入exit
或者ctrl+D
即可,這樣該容器就可以停止了
root@2e3e7e77adbd:/# exit
exit
幾個常用的docker命令:
docker ps
列出Containerdocker logs
顯示容器的標準輸出docker stop
停止執行中的容器docker version
顯示當前docker客戶端和守護程式的版本資訊
docker
命令的子命令很多,
attach 附加到一個執行中的容器上去
build 從Dockerfile構建映象
commit 從容器當前的修改建立一個新的映象
cp 從容器的檔案系統複製檔案/資料夾到主機路徑
create 建立一個新的容器
diff 檢查容器檔案系統發生的修改
events 從伺服器獲取實時的事件
exec 在已存在的容器中執行命令
export 將容器中的內容以流的方式匯出為tar歸檔
history 顯示映象的歷史
images 列出所有映象
import 從tar包中的內容建立一個新的檔案系統映象
info 顯示系統的資訊
inspect 返回容器低階的資訊
kill 殺掉一個執行中的容器
load 從tar歸檔載入映象
login 註冊或者登入到Docker註冊伺服器
logout 從Docker註冊伺服器登出
logs 檢索容器中的日誌
port 查詢基於NAT到PRIVATE_PORT的公開埠
pause 暫停容器中所有的程式
ps 列出容器
pull 從Docker註冊伺服器拉取一個映象或者倉庫
push 推送一個映象或者倉庫到Docker註冊伺服器
restart 重啟一個執行中的容器
rm 刪除一個/多個容器
rmi 刪除一個/多個映象
run 在新的容器中執行命令
save 儲存映象到tar歸檔
search 從Docker Hub搜尋一個映象
start 啟動一個已經停止的容器
stop 停止執行中的容器
tag 為倉庫中的映象新增標籤
top 查詢容器中執行的程式
unpause 取消容器的暫停狀態
version 顯示Docker的版本資訊
wait 堵塞住直到容器停止,然後列印它的退出碼
使用Dockerfile構建映象:
docker build -t <your username>/<image name> .
執行映象:
docker run -p <本地埠>:<容器埠> -d <映象名稱>
curl -i <本地IP>:<本地埠>
檢視容器的日誌(類似於tail -f
命令)
docker logs -f <容器名稱>
例子:使用官方Nginx Docker映象
使用之前,需要先獲取官方nginx映象
docker pull nginx
執行命令如下
docker run --name nginx_server -d -p 8080:80 -v /Users/mylxsw/codes/php:/usr/share/nginx/html:ro nginx
下面對提供的引數進行一一解釋:
--name
指定了我們建立的容器名稱為nginx_server-d
指定了容器在後臺執行-p
則指定了將容器的80
埠對映到宿主機的8080
埠-v
引數指定了將本地的/Users/mylxsw/codes/php
目錄對映到容器的/usr/share/nginx/html
目錄,並且訪問許可權為只讀
啟動該容器之後,就可以通過http://localhost:8080
訪問了。
更復雜一點,可以通過使用-v
引數指定nginx配置檔案-v /some/nginx.conf:/etc/nginx/nginx.conf:ro
。
在指定新的nginx配置檔案時,注意一定要設定nginx的
daemon off;
配置項,如果以後臺模式執行的話,容器就沒法跟蹤nginx的程式,容器啟動後就會立即結束。
如果僅僅是測試的話,可以使用--rm
選項,這樣,在容器結束執行之後就可以自動刪除,當然使用--rm
選項的時候不能和-d
選項同時使用。
docker run --rm --name nginx_server -d -p 8080:80 -v /Users/mylxsw/codes/php:/usr/share/nginx/html:ro nginx
參考:
相關文章
- 小丸子學Docker系列之——安裝Docker及基本命令的使用Docker
- docker安裝及解除安裝Docker
- Docker安裝及使用Docker
- Docker入門教程:15個Docker基本命令及用法Docker
- 10分鐘安裝lnmp-基本docker安裝LNMPDocker
- docker 基本安裝配置操作(複習)Docker
- docker安裝mongoDB及使用DockerMongoDB
- Docker簡介及安裝Docker
- docker基本命令Docker
- docker 基本命令Docker
- asm命令及安裝ASM
- Docker 入門及安裝[Docker 系列-1]Docker
- 伺服器安裝docker 以及使用docker安裝mysql及svn伺服器DockerMySql
- Redis的安裝及基本使用Redis
- Intellij安裝及基本用法IntelliJ
- Docker介紹及安裝詳解Docker
- 【Mac】Docker安裝及基礎使用MacDocker
- Mac安裝 anaconda及其基本命令Mac
- linux安裝配置與基本命令Linux
- 微服務--MQ安裝(+Docker命令應用)微服務MQDocker
- linux 命令安裝docker-composeLinuxDocker
- Docker 學習筆記-基本概念與安裝Docker筆記
- Docker架構及在Centos7上安裝dockerDocker架構CentOS
- Docker 理論簡介及安裝教程Docker
- Docker安裝flink及避坑指南Docker
- docker安裝elasticsearch及kibana部署、操作DockerElasticsearch
- Docker的安裝配置及使用詳解Docker
- Docker Linux快速安裝及Nginx部署DockerLinuxNginx
- Docker安裝及配置阿里雲加速Docker阿里
- 基於docker的mysql安裝及配置DockerMySql
- ubuntu安裝docker及k8sUbuntuDockerK8S
- Docker 安裝、常用命令、應用部署Docker
- Docker基本介紹及使用Docker
- kafka安裝及常用命令Kafka
- 安裝Docker 及部署 Wordpress 部落格系統Docker
- Ubuntu下docker安裝及簡單應用UbuntuDocker
- 本地yum庫製作及本地安裝DockerDocker
- 安裝dockerDocker