docker create命令的用法說明

docker create命令能夠基於鏡像創建容器。

該命令執行的效果類似於docker run -d,即創建一個將在系統後臺運行的容器。

但是與docker run -d不同的是,docker create創建的容器並未實際啟動,還需要執行docker start命令或docker run命令以啟動容器。

事實上,docker create命令常用於在啟動容器之前進行必要的設置。

示例如下:

1.創建容器

docker create -it --name mycontainer ubuntu_image bash

示例:

[[email protected] ~]# docker create -it --name myvm ubuntgu_image bash
840e4617fac5117c4a142ae6e86ac38e4590a0d6706029abe736843365b16d3640
[[email protected] ~]# docker ps -a | grep myvm
840e4617fac5    9faf320835640                      "/bin/sh -c '/opt/test"  2 minutes ago    Created                                 myvm

2.啟動容器

docker start -a -i mycontainer

docker run -it --name mycontainer ubuntu_image bash

關於docker run命令,這裡我就不多介紹瞭。

補充:Docker的基本命令

一、基本命令

docker version查看docker版本

docker info查看docker詳細信息

docker –help查看docker命令

二、鏡像命令

docker images查看docker鏡像

PEPOSITORY:鏡像的倉庫源

TAG:鏡像的標簽

IMAGE ID:鏡像ID

CREATED:鏡像創建時間

SIZE:鏡像大小

同一個倉庫源可以有多個TAG,表示這個倉庫源的不同版本,我們使用REPOSITORY:TAG來定義不同的鏡像。如果不指定一個鏡像的版本標簽,例如隻使用tomcat,docker將默認使用tomcat:latest鏡像

docker images -a列出本地所有的鏡像

docker images -p隻顯示鏡像ID

docker images –digests顯示鏡像的摘要信息

docker images –no-trunc顯示完整的鏡像信息

docker search tomcat從Docker Hub上查找tomcat鏡像

STARS:關註度

docker search -s 30 tomcat從Docker Hub上查找關註度大於30的tomcat鏡像

docker pull tomcat從Docker Hub上下載tomcat鏡像。等價於:docker pull tomcat:latest

docker commit -m “提交的描述信息” -a “作者” 容器ID 要創建的目標鏡像名稱:[標簽名]提交容器使之成為一個新的鏡像。

如:docker commit -m “新的tomcat” -a “lizq” f9e29e8455a5 mytomcat:1.2

docker rmi hello-world從Docker中刪除hello-world鏡像

docker rmi -f hello-world從Docker中強制刪除hello-world鏡像

docker rmi -f hello-world nginx從Docker中強制刪除hello-world鏡像和nginx鏡像

docker rmi -f $(docker images -p)通過docker images -p查詢到的鏡像ID來刪除所有鏡像

三、容器命令

docker run [OPTIONS] IMAGE根據鏡像新建並啟動容器。IMAGE是鏡像ID或鏡像名稱

OPTIONS說明:

–name=“容器新名字”:為容器指定一個名稱  -d:後臺運行容器,並返回容器ID,也即啟動守護式容器  -i:以交互模式運行容器,通常與-t同時使用  -t:為容器重新分配一個偽輸入終端,通常與-i同時使用  -P:隨機端口映射  -p:指定端口映射,有以下四種格式:

  ip:hostPort:containerPort

  ip::containerPort

  hostPort:containerPort

  containerPort

docker ps列出當前所有正在運行的容器

docker ps -a列出所有的容器

docker ps -l列出最近創建的容器

docker ps -n 3列出最近創建的3個容器

docker ps -q隻顯示容器ID

docker ps –no-trunc顯示當前所有正在運行的容器完整信息

exit退出並停止容器

Ctrl+p+q隻退出容器,不停止容器

docker start 容器ID或容器名稱啟動容器

docker restart 容器ID或容器名稱重新啟動容器

docker stop容器ID或容器名稱停止容器

docker kill 容器ID或容器名稱強制停止容器

docker rm 容器ID或容器名稱刪除容器

docker rm -f 容器ID或容器名稱強制刪除容器

docker rm -f $(docker ps -a -q)刪除多個容器

docker logs -f -t –since –tail 容器ID或容器名稱查看容器日志

如:docker logs -f -t –since=”2018-09-10” –tail=10 f9e29e8455a5

 -f : 查看實時日志

 -t : 查看日志產生的日期

 –since : 此參數指定瞭輸出日志開始日期,即隻輸出指定日期之後的日志

 –tail=10 : 查看最後的10條日志

docker top 容器ID或容器名稱查看容器內運行的進程

docker inspect 容器ID或容器名稱查看容器內部細節

docker attach 容器ID進到容器內

docker exec 容器ID進到容器內

docker cp 容器ID:容器內的文件路徑 宿主機路徑從容器內拷貝文件到宿主機.

如:docker cp f9e29e8455a5:/tmp/yum.log /root

以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。如有錯誤或未考慮完全的地方,望不吝賜教。