查看docker的版本信息
docker version
查看安裝docker的信息
docker info
查看本機(jī)Docker中存在哪些鏡像
docker images
檢索image
docker search ubuntu:14.04
在docker中獲取ubuntu鏡像
docker pull ubuntu:14.04
顯示一個鏡像的歷史
docker history birdben/ubuntu:v1
列出一個容器里面被改變的文件或者目
docker diff birdben/ubuntu:v1
從一個容器中取日志
docker logs birdben/ubuntu:v1
顯示一個運(yùn)行的容器里面的進(jìn)程信息
docker top birdben/ubuntu:v1
從容器里面拷貝文件/目錄到本地一個路徑
docker cp ID:/container_path to_path
列出當(dāng)前所有正在運(yùn)行的容器
docker ps
列出所有的容器
docker ps -a
列出最近一次啟動的容器
docker ps -l
查看容器的相關(guān)信息
docker inspect $CONTAINER_ID
顯示容器IP地址和端口號,如果輸出是空的說明沒有配置IP地址(不同的Docker容器可以通過此IP地址互相訪問)
docker inspect --format='{{.NetworkSettings.IPAddress}}' $CONTAINER_ID
保存對容器的修改
docker commit -m "Added ssh from ubuntu14.04" -a "birdben" 6s56d43f627f3 birdben/ubuntu:v1
參數(shù):
- -m參數(shù)用來來指定提交的說明信息;
- -a可以指定用戶信息的;
- 6s56d43f627f3代表的時容器的id;
- birdben/ubuntu:v1指定目標(biāo)鏡像的用戶名、倉庫名和 tag 信息。
構(gòu)建一個容器
docker build -t="birdben/ubuntu:v1" .
參數(shù):
- -t為構(gòu)建的鏡像制定一個標(biāo)簽,便于記憶/索引等
- . 指定Dockerfile文件在當(dāng)前目錄下,也可以替換為一個具體的 Dockerfile 的路徑。
在docker中運(yùn)行ubuntu鏡像
docker run <相關(guān)參數(shù)> <鏡像 ID> <初始命令>
守護(hù)模式啟動
docker run -it ubuntu:14.04
交互模式啟動
docker run -it ubuntu:14.04 /bin/bash
指定端口號啟動
docker run -p 80:80 birdben/ubuntu:v1
指定配置啟動
sudo docker run -d -p 10.211.55.4:9999:22 birdben/ubuntu:v1 '/usr/sbin/sshd' -D
參數(shù):
- -d:表示以“守護(hù)模式”執(zhí)行,日志不會出現(xiàn)在輸出終端上。
- -i:表示以“交互模式”運(yùn)行容器,-i 則讓容器的標(biāo)準(zhǔn)輸入保持打開
- -t:表示容器啟動后會進(jìn)入其命令行,-t 選項讓Docker分配一個偽終端(pseudo-tty)并綁定到容器的標(biāo)準(zhǔn)輸入上
- -v:表示需要將本地哪個目錄掛載到容器中,格式:-v <宿主機(jī)目錄>:<容器目錄>,-v 標(biāo)記來創(chuàng)建一個數(shù)據(jù)卷并掛載到容器里。在一次 run 中多次使用可以掛載多個數(shù)據(jù)卷。
- -p:表示宿主機(jī)與容器的端口映射,此時將容器內(nèi)部的 22 端口映射為宿主機(jī)的 9999 端口,這樣就向外界暴露了 9999 端口,可通過 Docker 網(wǎng)橋來訪問容器內(nèi)部的 22 端口了。
- 注意:這里使用的是宿主機(jī)的 IP 地址:10.211.55.4,與對外暴露的端口號 9999,它映射容器內(nèi)部的端口號 22。ssh外部需要訪問:ssh root@10.211.55.4 -p 9999
- 不一定要使用“鏡像 ID”,也可以使用“倉庫名:標(biāo)簽名”
start 啟動容器
docker start 117843ade696117843ade696
stop 停止正在運(yùn)行的容器
docker stop 117843ade696117843ade696
restart 重啟容器
docker restart 117843ade696117843ade696
rm 刪除容器
docker rm 117843ade696117843ade696
進(jìn)入容器
docker exec -it mongodb bash(mongodb 為容器名)
rmi 刪除鏡像
docker rmi ed9c93747fe1Deleted
構(gòu)建鏡像
docker build -t nginx:v3 .(nginx鏡像名,v3標(biāo)簽)
登錄Docker Hub中心
docker login
發(fā)布上傳image(push)
docker push birdben/ubuntu:v1
從docker hub 下載image(pull)
docker pull birdben/ubuntu:v1