導語
本篇文章是將一些常用的Docker命令記錄下來,足夠平時的開發使用了。
1,Docker環境信息
info 命令
用於檢測Docker是否正確安裝,一般結合docker version命令使用。
$ docker info
version 命令
查看docker的版本號。
$ docker version
2,容器基礎運維操作
attach 命令
docker attach命令對應開發者很有用,可以連接到正在運行的容器,觀察容器的運行狀況,或與容器的主進程進行交互。
$ docker attach 容器id
inspect 命令
用於查看鏡像和容器的詳細信息,默認會列出全部信息,可以通過–format參數來指定輸出的模板格式,以便輸出特定信息。
$ docker inspect [OPTIONS] NAME|ID [NAME|ID...]
OPTIONS說明:
- -f :指定返回值的模板文件
- -s :顯示總的文件大小
- –type :爲指定類型返回 JSON
查看容器的信息 (ps)
docker ps 命令 :可以查看容器的
CONTAINER ID
、NAME
、IMAGE NAME
、端口開啓及綁定、容器啓動後執行的COMMNAD
。
$ docker ps # 默認顯示當前正在運行中的container
$ docker ps -a # 查看包括已經停止的所有容器
$ docker ps -l # 顯示最新啓動的一個容器(包括已停止的)
3,鏡像相關
列出機器上的鏡像
$ docker images
在docker index搜索image (search)
$ docker search 鏡像名
從docker registry server 中下拉image或repository(pull)
$ docker pull centos
上面的命令需要注意,在docker v1.2版本以前,會下載官方鏡像的centos倉庫裏的所有鏡像,而從v.13開始官方文檔裏的說明變了:will pull the centos:latest image, its intermediate layers and any aliases of the same id,也就是隻會下載tag爲latest的鏡像(以及同一images id的其他tag)。
也可以明確指定具體的鏡像:
$ docker pull centos:centos7
當然也可以從某個人的公共倉庫(包括自己是私人倉庫)拉取:
$ docker pull seanlook/centos:centos7
如果你沒有網絡,或者從其他私服獲取鏡像:
$ docker pull 私服ip地址
推送一個image或repository到registry(push)
$ docker push seanlook/mongo
$ docker push 私服ip地址
Docker build 使用此配置生成新的image
$ docker build [OPTIONS] PATH | URL | -
OPTIONS說明:
-
–build-arg=[] :設置鏡像創建時的變量;
-
–cpu-shares :設置 cpu 使用權重;
-
–cpu-period :限制 CPU CFS週期;
-
–cpu-quota :限制 CPU CFS配額;
-
–cpuset-cpus :指定使用的CPU id;
-
–cpuset-mems :指定使用的內存 id;
-
–disable-content-trust :忽略校驗,默認開啓;
-
-f :指定要使用的Dockerfile路徑;
-
–tag, -t : 鏡像的名字及標籤,通常 name:tag 或者 name 格式;可以在一次構建中爲一個鏡像設置多個標籤。
-
–pull : 嘗試去更新鏡像的新版本;
給鏡像打標籤 (tag)
$ docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
查看容器中正在運行的進程(top)
$ docker top <container_id/container_name>
小結
本篇文章介紹了Docker的常用命令,由於純手打,難免會有紕漏,如果發現錯誤的地方,請第一時間告訴我,這將是我進步的一個很重要的環節。