docker create命令能夠基于鏡像創(chuàng)建容器。
該命令執(zhí)行的效果類似于docker run -d,即創(chuàng)建一個將在系統(tǒng)后臺運(yùn)行的容器。
但是與docker run -d不同的是,docker create創(chuàng)建的容器并未實際啟動,還需要執(zhí)行docker start命令或docker run命令以啟動容器。
事實上,docker create命令常用于在啟動容器之前進(jìn)行必要的設(shè)置。
示例如下:
1.創(chuàng)建容器
docker create -it --name mycontainer ubuntu_image bash
示例:
[root@my ~]# docker create -it --name myvm ubuntgu_image bash
840e4617fac5117c4a142ae6e86ac38e4590a0d6706029abe736843365b16d3640
[root@my ~]# 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
關(guān)于docker run命令,這里我就不多介紹了。
補(bǔ)充:Docker的基本命令
一、基本命令
docker version查看docker版本
docker info查看docker詳細(xì)信息
docker --help查看docker命令
二、鏡像命令
docker images查看docker鏡像

PEPOSITORY:鏡像的倉庫源
TAG:鏡像的標(biāo)簽
IMAGE ID:鏡像ID
CREATED:鏡像創(chuàng)建時間
SIZE:鏡像大小
同一個倉庫源可以有多個TAG,表示這個倉庫源的不同版本,我們使用REPOSITORY:TAG來定義不同的鏡像。如果不指定一個鏡像的版本標(biāo)簽,例如只使用tomcat,docker將默認(rèn)使用tomcat:latest鏡像
docker images -a列出本地所有的鏡像
docker images -p只顯示鏡像ID
docker images --digests顯示鏡像的摘要信息
docker images --no-trunc顯示完整的鏡像信息

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

STARS:關(guān)注度
docker search -s 30 tomcat從Docker Hub上查找關(guān)注度大于30的tomcat鏡像
docker pull tomcat從Docker Hub上下載tomcat鏡像。等價于:docker pull tomcat:latest
docker commit -m "提交的描述信息" -a "作者" 容器ID 要創(chuàng)建的目標(biāo)鏡像名稱:[標(biāo)簽名]提交容器使之成為一個新的鏡像。
如:docker commit -m "新的tomcat" -a "lizq" f9e29e8455a5 mytomcat:1.2
docker rmi hello-world從Docker中刪除hello-world鏡像
docker rmi -f hello-world從Docker中強(qiáng)制刪除hello-world鏡像
docker rmi -f hello-world nginx從Docker中強(qiáng)制刪除hello-world鏡像和nginx鏡像
docker rmi -f $(docker images -p)通過docker images -p查詢到的鏡像ID來刪除所有鏡像
三、容器命令
docker run [OPTIONS] IMAGE根據(jù)鏡像新建并啟動容器。IMAGE是鏡像ID或鏡像名稱
OPTIONS說明:
--name=“容器新名字”:為容器指定一個名稱 -d:后臺運(yùn)行容器,并返回容器ID,也即啟動守護(hù)式容器 -i:以交互模式運(yùn)行容器,通常與-t同時使用 -t:為容器重新分配一個偽輸入終端,通常與-i同時使用 -P:隨機(jī)端口映射 -p:指定端口映射,有以下四種格式:
ip:hostPort:containerPort
ip::containerPort
hostPort:containerPort
containerPort
docker ps列出當(dāng)前所有正在運(yùn)行的容器
docker ps -a列出所有的容器
docker ps -l列出最近創(chuàng)建的容器
docker ps -n 3列出最近創(chuàng)建的3個容器
docker ps -q只顯示容器ID
docker ps --no-trunc顯示當(dāng)前所有正在運(yùn)行的容器完整信息
exit退出并停止容器
Ctrl+p+q只退出容器,不停止容器
docker start 容器ID或容器名稱啟動容器
docker restart 容器ID或容器名稱重新啟動容器
docker stop容器ID或容器名稱停止容器
docker kill 容器ID或容器名稱強(qiáng)制停止容器
docker rm 容器ID或容器名稱刪除容器
docker rm -f 容器ID或容器名稱強(qiáng)制刪除容器
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 : 查看日志產(chǎn)生的日期
--since : 此參數(shù)指定了輸出日志開始日期,即只輸出指定日期之后的日志
--tail=10 : 查看最后的10條日志
docker top 容器ID或容器名稱查看容器內(nèi)運(yùn)行的進(jìn)程
docker inspect 容器ID或容器名稱查看容器內(nèi)部細(xì)節(jié)
docker attach 容器ID進(jìn)到容器內(nèi)
docker exec 容器ID進(jìn)到容器內(nèi)
docker cp 容器ID:容器內(nèi)的文件路徑 宿主機(jī)路徑從容器內(nèi)拷貝文件到宿主機(jī).
如:docker cp f9e29e8455a5:/tmp/yum.log /root
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。