1. 程式人生 > >Docker教程系列三:Docker容器操作

Docker教程系列三:Docker容器操作

主機 linu 指定 font htm start 操作 ipad 重復

1查看容器

l 查看正在運行容器:

docker ps

l 查看所有的容器(啟動過的歷史容器):

docker ps –a

l 查看最後一次運行的容器:

docker ps –l

l 查看停止的容器

docker ps -f status=exited

2創建與啟動容器

l 創建容器常用的參數說明:

l 創建容器命令:docker run

l -i:表示運行容器

l -t:表示容器啟動後會進入其命令行。加入這兩個參數後,容器創建就能登錄進去。即分配一個偽終端。

l --name :為創建的容器命名。

l -v:表示目錄映射關系(前者是宿主機目錄,後者是映射到宿主機上的目錄),可以使用多個-v做多個目錄或文件映射。註意:最好做目錄映射,在宿主機上做修改,然後共享到容器上。

l -d:在run後面加上-d參數,則會創建一個守護式容器在後臺運行(這樣創建容器後不會自動登錄容器,如果只加-i -t兩個參數,創建後就會自動進去容器)。

l -p:表示端口映射,前者是宿主機端口,後者是容器內的映射端口。可以使用多個-p做多個端口映射

2.1交互式容器

創建一個交互式容器並取名為mycentos

docker run -it --name = mycentos centos:7 /bin/bash

這時我們通過ps命令查看,發現可以看到啟動的容器,狀態為啟動狀態

使用exit命令 退出當前容器

然後用ps -a 命令查看發現該容器也隨之停止

2.2守護式容器

創建一個守護式容器:如果對於一個需要長期運行的容器來說,我們可以創建一個守護式容器。命令如下(容器名稱不能重復):

docker run -di --name=mycentos2 centos:7

l 登錄守護式容器方式:

docker exec -it container_name (或者 container_id) /bin/bash(exit退出時,容器不會停止)

3停止與啟動容器

l 停止正在運行的容器:docker stop $CONTAINER_NAME/ID

l 啟動已運行過的容器:docker start $CONTAINER_NAME/ID

4文件拷貝

如果我們需要將文件拷貝到容器內可以使用cp命令

docker cp 需要拷貝的文件或目錄 容器名稱:容器目錄

也可以將文件從容器內拷貝出來

docker cp 容器名稱:容器目錄 需要拷貝的文件或目錄

5目錄掛載

我們可以在創建容器的時候,將宿主機的目錄與容器內的目錄進行映射,這樣我們就可以通過修改宿主機某個目錄的文件從而去影響容器。

創建容器 添加-v參數 後邊為 宿主機目錄:容器目錄

docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7

如果你共享的是多級的目錄,可能會出現權限不足的提示。

這是因為CentOS7中的安全模塊selinux把權限禁掉了,我們需要添加參數 --privileged=true 來解決掛載的目錄沒有權限的問題

6查看容器IP地址

我們可以通過以下命令查看容器運行的各種數據

docker inspect mycentos2

也可以直接執行下面的命令直接輸出IP地址

docker inspect --format=‘{{.NetworkSettings.IPAddress}}‘ mycentos2

7刪除容器

l 刪除指定的容器:docker rm $CONTAINER_ID/NAME

註意,只能刪除停止的容器

l 刪除所有容器:docker rm `docker ps -a -q`

Docker教程系列三:Docker容器操作