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