【Docker】命令使用大全
點擊上方“小白學(xué)視覺”,選擇加"星標(biāo)"或“置頂”
重磅干貨,第一時間送達
簡述
容器的出現(xiàn)是為了解決環(huán)境配置的問題,虛擬機是一種解決方案,但是也有一些缺點,再后來出現(xiàn)了 Linux 容器,Docker 屬于 Linux 容器的一種封裝,提供簡單易用的容器使用接口。它是目前最流行的 Linux 容器解決方案。
Docker 的主要用途
提供一次性的環(huán)境。比如,本地測試他人的軟件、持續(xù)集成的時候提供單元測試和構(gòu)建的環(huán)境。 提供彈性的云服務(wù)。因為 Docker 容器可以隨開隨關(guān),很適合動態(tài)擴容和縮容。 組建微服務(wù)架構(gòu)。通過多個容器,一臺機器可以跑多個服務(wù),因此在本機就可以模擬出微服務(wù)架構(gòu)。
基本概念
引用自:https://www.zhihu.com/topic/19950993/top-answers
鏡像(Image):類似于虛擬機中的鏡像,是一個包含有文件系統(tǒng)的面向 Docker 引擎的只讀模板。任何應(yīng)用程序運行都需要環(huán)境,而鏡像就是用來提供這種運行環(huán)境的。例如一個 Ubuntu 鏡像就是一個包含 Ubuntu 操作系統(tǒng)環(huán)境的模板,同理在該鏡像上裝上 Apache 軟件,就可以稱為 Apache 鏡像。 容器(Container):類似于一個輕量級的沙盒,可以將其看作一個極簡的 Linux 系統(tǒng)環(huán)境(包括 root 權(quán)限、進程空間、用戶空間和網(wǎng)絡(luò)空間等),以及運行在其中的應(yīng)用程序。Docker 引擎利用容器來運行、隔離各個應(yīng)用。容器是鏡像創(chuàng)建的應(yīng)用實例,可以創(chuàng)建、啟動、停止、刪除容器,各個容器之間是是相互隔離的,互不影響。注意:鏡像本身是只讀的,容器從鏡像啟動時,Docker 在鏡像的上層創(chuàng)建一個可寫層,鏡像本身不變。 倉庫(Repository):類似于代碼倉庫,這里是鏡像倉庫,是 Docker 用來集中存放鏡像文件的地方。注意與注冊服務(wù)器(Registry)的區(qū)別:注冊服務(wù)器是存放倉庫的地方,一般會有多個倉庫;而倉庫是存放鏡像的地方,一般每個倉庫存放一類鏡像,每個鏡像利用 tag 進行區(qū)分,比如 Ubuntu 倉庫存放有多個版本(12.04、14.04 等)的 Ubuntu 鏡像。
以下介紹 Docker 基本的命令及其使用

容器周期管理
run
docker run:創(chuàng)建一個新的容器并運行一個命令
docker?run?[OPTIONS]?IMAGE?[COMMAND]?[ARG...]
OPTIONS 說明:
-a stdin: 指定標(biāo)準(zhǔn)輸入輸出內(nèi)容類型,可選 STDIN/STDOUT/STDERR 三項;
-d: 后臺運行容器,并返回容器 ID;
-i: 以交互模式運行容器,通常與 -t 同時使用;
-P: 隨機端口映射,容器內(nèi)部端口隨機映射到主機的端口
-p: 指定端口映射,格式為:主機 (宿主) 端口:容器端口
-t: 為容器重新分配一個偽輸入終端,通常與 -i 同時使用;
--name="nginx-lb": 為容器指定一個名稱;
--dns 8.8.8.8: 指定容器使用的 DNS 服務(wù)器,默認(rèn)和宿主一致;
--dns-search example.com: 指定容器 DNS 搜索域名,默認(rèn)和宿主一致;
-h "mars": 指定容器的 hostname;
-e username="ritchie": 設(shè)置環(huán)境變量;
--env-file=[]: 從指定文件讀入環(huán)境變量;
--cpuset="0-2" or --cpuset="0,1,2": 綁定容器到指定 CPU 運行;
-m : 設(shè)置容器使用內(nèi)存最大值;
--net="bridge": 指定容器的網(wǎng)絡(luò)連接類型,支持 bridge/host/none/container: 四種類型;
--link=[]: 添加鏈接到另一個容器;
--expose=[]: 開放一個端口或一組端口;
--volume , -v 綁定一個卷
使用 docker 鏡像 nginx:latest 以后臺模式啟動一個容器,并將容器命名為 mynginx。
docker?run?--name?mynginx?-d?nginx:latest
使用鏡像 nginx:latest 以后臺模式啟動一個容器,并將容器的 80 端口映射到主機隨機端口。
docker?run?-P?-d?nginx:latest
使用鏡像 nginx:latest,以后臺模式啟動一個容器,將容器的 80 端口映射到主機的 80 端口,主機的目錄 /data 映射到容器的 /data。
docker?run?-p?80:80?-v?/data:/data?-d?nginx:latest
綁定容器的 8080 端口,并將其映射到本地主機 127.0.0.1 的 80 端口上。
docker?run?-p?127.0.0.1:80:8080/tcp?ubuntu?bash
使用鏡像 nginx:latest 以交互模式啟動一個容器,在容器內(nèi)執(zhí)行 /bin/bash 命令。
docker?run?-it?nginx:latest?/bin/bash
start/stop/restart
docker?start?[OPTIONS]?CONTAINER?[CONTAINER...]
docker?stop?[OPTIONS]?CONTAINER?[CONTAINER...]
docker?restart?[OPTIONS]?CONTAINER?[CONTAINER...]
啟動已被停止的容器 myrunoob
docker?start?myrunoob
停止運行中的容器 myrunoob
docker?stop?myrunoob
重啟容器 myrunoob
docker?restart?myrunoob
kill
docker kill : 殺掉一個運行中的容器。
docker?kill?[OPTIONS]?CONTAINER?[CONTAINER...]
OPTIONS 說明:
-s : 向容器發(fā)送一個信號
殺掉運行中的容器 mynginx
docker?kill?-s?KILL?mynginx
rm
docker rm:刪除一個或多個容器。
docker?rm?[OPTIONS]?CONTAINER?[CONTAINER...]
OPTIONS 說明:
-f : 通過 SIGKILL 信號強制刪除一個運行中的容器。
-l : 移除容器間的網(wǎng)絡(luò)連接,而非容器本身。
-v : 刪除與容器關(guān)聯(lián)的卷。
強制刪除容器 db01、db02:
docker?rm?-f?db01?db02
移除容器 nginx01 對容器 db01 的連接,連接名 db:
docker?rm?-l?db
刪除容器 nginx01, 并刪除容器掛載的數(shù)據(jù)卷:
docker?rm?-v?nginx01
刪除所有已經(jīng)停止的容器:
docker?rm?$(docker?ps?-a?-q)
pause/unpause
docker pause : 暫停容器中所有的進程。docker unpause : 恢復(fù)容器中所有的進程。
docker?pause?[OPTIONS]?CONTAINER?[CONTAINER...]
docker?unpause?[OPTIONS]?CONTAINER?[CONTAINER...]
暫停數(shù)據(jù)庫容器 db01 提供服務(wù)。
docker?pause?db01
恢復(fù)數(shù)據(jù)庫容器 db01 提供服務(wù)。
docker?unpause?db01
create
docker create:創(chuàng)建一個新的容器但不啟動它 用法同 docker run
docker?create?[OPTIONS]?IMAGE?[COMMAND]?[ARG...]
語法同 docker run
使用 docker 鏡像 nginx:latest 創(chuàng)建一個容器,并將容器命名為 myrunoob
docker?create??--name?myrunoob??nginx:latest?????
#?輸出
09b93464c2f75b7b69f83d56a9cfc23ceb50a48a9db7652ee4c27e3e2cb1961f
exec
docker exec :在運行的容器中執(zhí)行命令
docker?exec?[OPTIONS]?CONTAINER?COMMAND?[ARG...]
OPTIONS 說明:
-d : 分離模式:在后臺運行
-i : 即使沒有附加也保持 STDIN 打開
-t : 分配一個偽終端
在容器 mynginx 中以交互模式執(zhí)行容器內(nèi) /root/runoob.sh 腳本:
docker?exec?-it?mynginx?/bin/sh?/root/runoob.sh
在容器 mynginx 中開啟一個交互模式的終端:
docker?exec?-i?-t??mynginx?/bin/bash
root@b1a0703e41e7:/#
也可以通過 docker ps -a 命令查看已經(jīng)在運行的容器,然后使用容器 ID 進入容器。 查看已經(jīng)在運行的容器 ID:
docker?ps?-a?
#?輸出
...
9df70f9a0714????????openjdk?????????????"/usercode/script.sh…"?
...
第一列的 9df70f9a0714 就是容器 ID。 通過 exec 命令對指定的容器執(zhí)行 bash:
docker?exec?-it?9df70f9a0714?/bin/bash
容器操作
ps
docker ps : 列出容器
docker?ps?[OPTIONS]
OPTIONS 說明:
-a : 顯示所有的容器,包括未運行的。
-f : 根據(jù)條件過濾顯示的內(nèi)容。
--format : 指定返回值的模板文件。
-l : 顯示最近創(chuàng)建的容器。
-n : 列出最近創(chuàng)建的 n 個容器。
--no-trunc : 不截斷輸出。
-q : 靜默模式,只顯示容器編號。
-s : 顯示總的文件大小。
列出所有在運行的容器信息。
docker?ps
#?輸出
CONTAINER?ID???IMAGE??????????COMMAND????????????????...??PORTS????????????????????NAMES
09b93464c2f7???nginx:latest???"nginx?-g?'daemon?off"?...??80/tcp,?443/tcp??????????myrunoob
96f7f14e99ab???mysql:5.6??????"docker-entrypoint.sh"?...??0.0.0.0:3306->3306/tcp???mymysql

inspect
docker inspect : 獲取容器 / 鏡像的元數(shù)據(jù)。
docker?inspect?[OPTIONS]?NAME|ID?[NAME|ID...]
OPTIONS 說明:
-f : 指定返回值的模板文件。
-s ?: 顯示總的文件大小。
--type ?: 為指定類型返回 JSON。
top
docker top : 查看容器中運行的進程信息,支持 ps 命令參數(shù)。
只有在運行中的容器才能使用這個命令
docker?top?[OPTIONS]?CONTAINER?[ps?OPTIONS]
容器運行時不一定有 /bin/bash 終端來交互執(zhí)行 top 命令,而且容器還不一定有 top 命令,可以使用 docker top 來實現(xiàn)查看 container 中正在運行的進程。

attach
docker attach : 連接到正在運行中的容器。
events
docker events : 從服務(wù)器獲取實時事件
docker?events?[OPTIONS]
OPTIONS 說明:
-f :根據(jù)條件過濾事件;
--since :從指定的時間戳后顯示所有事件;
--until :流水時間顯示到指定的時間為止;
顯示 docker 鏡像為 python 2016 年 7 月 1 日后的相關(guān)事件。
docker?events?-f?"image"="python"?--since="1467302400"?
1467302400 代表時間戳的意思
在線時間戳轉(zhuǎn)換工具:https://tool.lu/timestamp/

logs
docker logs : 獲取容器的日志
docker?logs?[OPTIONS]?CONTAINER
OPTIONS 說明:
**-f : ** 跟蹤日志輸出
--since : 顯示某個開始時間的所有日志
**-t : ** 顯示時間戳
--tail : 僅列出最新 N 條容器日志

wait
docker wait : 阻塞運行直到容器停止,然后打印出它的退出代碼。
docker?wait?[OPTIONS]?CONTAINER?[CONTAINER...]
export
docker export : 將文件系統(tǒng)作為一個 tar 歸檔文件導(dǎo)出到 STDOUT。
docker?export?[OPTIONS]?CONTAINER
OPTIONS 說明:
-o : 將輸入內(nèi)容寫到文件。
將 id 為 a404c6c174a2 的容器按日期保存為 tar 文件。
docker?export?-o?mysql-`date?+%Y%m%d`.tar?a404c6c174a2
port
docker port : 列出指定的容器的端口映射,或者查找將 PRIVATE_PORT NAT 到面向公眾的端口。
docker?port?[OPTIONS]?CONTAINER?[PRIVATE_PORT[/PROTO]]
容器 rootfs 命令
commit
docker commit ?: 從容器創(chuàng)建一個新的鏡像。
docker?commit?[OPTIONS]?CONTAINER?[REPOSITORY[:TAG]]
OPTIONS 說明:
-a : 提交的鏡像作者;
-c : 使用 Dockerfile 指令來創(chuàng)建鏡像;
-m : 提交時的說明文字;
-p : 在 commit 時,將容器暫停。
將容器 d1891e47245f 保存為新的鏡像,并添加提交人信息和說明信息。
docker?commit?-a?"Leong"?-m?"python?opencv"?d1891e47245f??leong/python_opencv:v1?

cp
docker cp : 用于容器與主機之間的數(shù)據(jù)拷貝。
docker?cp?[OPTIONS]?CONTAINER:SRC_PATH?DEST_PATH|-
docker?cp?[OPTIONS]?SRC_PATH|-?CONTAINER:DEST_PATH
OPTIONS 說明:
-L : 保持源目標(biāo)中的鏈接
docker?cp?/www/runoob?96f7f14e99ab:/www/??#?將主機?/www/runoob?目錄拷貝到容器?96f7f14e99ab?的?/www?目錄下。
docker?cp?/www/runoob?96f7f14e99ab:/www???#?將主機?/www/runoob?目錄拷貝到容器?96f7f14e99ab?中,目錄重命名為?www。
docker?cp??96f7f14e99ab:/www?/tmp/????????#?將容器?96f7f14e99ab?的?/www?目錄拷貝到主機的?/tmp?目錄中。
diff
**docker diff : ** 檢查容器里文件結(jié)構(gòu)的更改。
docker?diff?[OPTIONS]?CONTAINER
查看容器 id 前綴為 d189 的容器的文件結(jié)構(gòu)更改。
docker?diff?d189

最前面的一個字符含義如下:
A- AddD- DeleteC- Change
鏡像倉庫
login/logout
docker login : 登陸到一個 Docker 鏡像倉庫,如果未指定鏡像倉庫地址,默認(rèn)為官方倉庫 Docker Hubdocker logout : 登出一個 Docker 鏡像倉庫,如果未指定鏡像倉庫地址,默認(rèn)為官方倉庫 Docker Hub
docker?login?[OPTIONS]?[SERVER]
docker?logout?[OPTIONS]?[SERVER]
OPTIONS 說明:
-u : 登陸的用戶名
-p : 登陸的密碼
pull
**docker pull : ** 從鏡像倉庫中拉取或者更新指定鏡像
docker?pull?[OPTIONS]?NAME[:TAG|@DIGEST]
OPTIONS 說明:
-a : 拉取所有 tagged 鏡像
--disable-content-trust : 忽略鏡像的校驗,默認(rèn)開啟
從 Docker Hub 下載 REPOSITORY 為 java 的所有鏡像。
docker?pull?-a?java
push
docker push : 將本地的鏡像上傳到鏡像倉庫,要先登陸到鏡像倉庫
docker?push?[OPTIONS]?NAME[:TAG]
OPTIONS 說明:
--disable-content-trust : 忽略鏡像的校驗,默認(rèn)開啟
上傳本地鏡像 myapache:v1 到鏡像倉庫中。
docker?push?myapache:v1
search
docker search : 從 Docker Hub 查找鏡像
docker?search?[OPTIONS]?TERM
OPTIONS 說明:
--automated 只列出 automated build 類型的鏡像;
--no-trunc 顯示完整的鏡像描述;
-s 列出收藏數(shù)不小于指定值的鏡像。
從 Docker Hub 查找所有鏡像名包含 anaconda,并且收藏數(shù)大于 10 的鏡像
?docker?search?-s?10?anaconda?

NAME 鏡像倉庫源的名稱 DESCRIPTION 鏡像的描述 OFFICIAL 是否 docker 官方發(fā)布 stars 類似 Github 里面的 star,表示點贊、喜歡的意思。 AUTOMATED 自動構(gòu)建。
本地鏡像管理
images
docker?images?[OPTIONS]?[REPOSITORY[:TAG]]
OPTIONS 說明:
-a : 列出本地所有的鏡像(含中間映像層,默認(rèn)情況下,過濾掉中間映像層);
--digests : 顯示鏡像的摘要信息;
-f : 顯示滿足條件的鏡像;
--format : 指定返回值的模板文件;
--no-trunc : 顯示完整的鏡像信息;
-q : 只顯示鏡像 ID。
rmi/prune
docker rmi : 刪除本地一個或多少鏡像。
docker?rmi?[OPTIONS]?IMAGE?[IMAGE...]
OPTIONS 說明:
-f : 強制刪除;
--no-prune : 不移除該鏡像的過程鏡像,默認(rèn)移除;
prune 命令用來刪除不再使用的 docker 對象。 刪除所有未被 tag 標(biāo)記和未被容器使用的鏡像:
docker?image?prune
#?輸出
WARNING!?This?will?remove?all?dangling?images.
Are?you?sure?you?want?to?continue??[y/N]?y
刪除所有未被容器使用的鏡像:
docker?image?prune?-a
刪除所有停止運行的容器:
docker?container?prune
刪除所有未被掛載的卷:
docker?volume?prune
刪除所有網(wǎng)絡(luò):
docker?network?prune
刪除 docker 所有資源:
docker?system?prune
tag
**docker tag : ** 標(biāo)記本地鏡像,將其歸入某一倉庫。
docker?tag?[OPTIONS]?IMAGE[:TAG]?[REGISTRYHOST/][USERNAME/]NAME[:TAG]
將鏡像 ubuntu:15.10 標(biāo)記為 runoob/ubuntu:v3 鏡像。
docker?tag?ubuntu:15.10?runoob/ubuntu:v3
docker?images???runoob/ubuntu:v3
#?輸出
REPOSITORY??????????TAG?????????????????IMAGE?ID????????????CREATED?????????????SIZE
runoob/ubuntu???????v3??????????????????4e3b13c8a266????????3?months?ago????????136.3?MB
build
**docker build ** 命令用于使用 Dockerfile 創(chuàng)建鏡像。
docker?build?[OPTIONS]?PATH?|?URL?|?-
OPTIONS 說明:
--build-arg=[] : 設(shè)置鏡像創(chuàng)建時的變量;
--cpu-shares : 設(shè)置 cpu 使用權(quán)重;
--cpu-period : 限制 CPU CFS 周期;
--cpu-quota : 限制 CPU CFS 配額;
--cpuset-cpus : 指定使用的 CPU id;
--cpuset-mems : 指定使用的內(nèi)存 id;
--disable-content-trust : 忽略校驗,默認(rèn)開啟;
-f : 指定要使用的 Dockerfile 路徑;
--force-rm : 設(shè)置鏡像過程中刪除中間容器;
--isolation : 使用容器隔離技術(shù);
--label=[] : 設(shè)置鏡像使用的元數(shù)據(jù);
-m : 設(shè)置內(nèi)存最大值;
--memory-swap : 設(shè)置 Swap 的最大值為內(nèi)存 + swap,"-1" 表示不限 swap;
--no-cache : 創(chuàng)建鏡像的過程不使用緩存;
--pull : 嘗試去更新鏡像的新版本;
--quiet, -q : 安靜模式,成功后只輸出鏡像 ID;
--rm : 設(shè)置鏡像成功后刪除中間容器;
--shm-size : 設(shè)置 /dev/shm 的大小,默認(rèn)值是 64M;
--ulimit :Ulimit 配置。
--tag, -t: 鏡像的名字及標(biāo)簽,通常 name:tag 或者 name 格式;可以在一次構(gòu)建中為一個鏡像設(shè)置多個標(biāo)簽。
--network: 默認(rèn) default。在構(gòu)建期間設(shè)置 RUN 指令的網(wǎng)絡(luò)模式
使用當(dāng)前目錄的 Dockerfile 創(chuàng)建鏡像,標(biāo)簽為 runoob/ubuntu:v1。
docker?build?-t?runoob/ubuntu:v1?.
使用 URL github.com/creack/docker-firefox 的 Dockerfile 創(chuàng)建鏡像。
docker?build?github.com/creack/docker-firefox
也可以通過 -f Dockerfile 文件的位置:
docker?build?-f?/path/to/a/Dockerfile?.
在 Docker 守護進程執(zhí)行 Dockerfile 中的指令前,首先會對 Dockerfile 進行語法檢查,有語法錯誤時會返回:
docker?build?-t?test/myapp?.
#?輸出
Sending?build?context?to?Docker?daemon?2.048?kB
Error?response?from?daemon:?Unknown?instruction:?RUNCMD
history
docker history : 查看指定鏡像的創(chuàng)建歷史。
docker?history?[OPTIONS]?IMAGE
OPTIONS 說明:
-H : 以可讀的格式打印鏡像大小和日期,默認(rèn)為 true;
--no-trunc : 顯示完整的提交記錄;
-q : 僅列出提交記錄 ID。
查看本地鏡像 runoob/ubuntu:v3 的創(chuàng)建歷史。
docker?history?runoob/ubuntu:v3
#?輸出
IMAGE?????????????CREATED???????????CREATED?BY??????????????????????????????????????SIZE??????COMMENT
4e3b13c8a266??????3?months?ago??????/bin/sh?-c?#(nop)?CMD?["/bin/bash"]?????????????0?B?????????????????
?????????3?months?ago??????/bin/sh?-c?sed?-i?'s/^#\s*\(deb.*universe\)$/???1.863?kB????????????
?????????3?months?ago??????/bin/sh?-c?set?-xe???&&?echo?' #!/bin/sh'?>?/u???701?B???????????????
?????????3?months?ago??????/bin/sh?-c?#(nop)?ADD?file:43cb048516c6b80f22???136.3?MB
save
docker save : 將指定鏡像保存成 tar 歸檔文件。
docker?save?[OPTIONS]?IMAGE?[IMAGE...]
OPTIONS 說明:
-o : 輸出到的文件。
將鏡像 runoob/ubuntu:v3 生成 my_ubuntu_v3.tar 文檔
docker?save?-o?my_ubuntu_v3.tar?runoob/ubuntu:v3
ll?my_ubuntu_v3.tar
#?輸出
-rw-------?1?runoob?runoob?142102016?Jul?11?01:37?my_ubuntu_v3.tar
load
docker load : 導(dǎo)入使用 docker save 命令導(dǎo)出的鏡像。
docker?load?[OPTIONS]
OPTIONS 說明:
--input , -i : 指定導(dǎo)入的文件,代替 STDIN。
--quiet , -q : 精簡輸出信息。
導(dǎo)入鏡像:
docker?image?ls
#?輸出
REPOSITORY??????????TAG?????????????????IMAGE?ID????????????CREATED?????????????SIZE
docker?load?#?輸出
Loaded?image:?busybox:latest
docker?images
#?輸出
REPOSITORY??????????TAG?????????????????IMAGE?ID????????????CREATED?????????????SIZE
busybox?????????????latest??????????????769b9341d937????????7?weeks?ago?????????2.489?MB
docker?load?--input?fedora.tar
#?輸出
Loaded?image:?fedora:rawhide
Loaded?image:?fedora:20
docker?images
#?輸出
REPOSITORY??????????TAG?????????????????IMAGE?ID????????????CREATED?????????????SIZE
busybox?????????????latest??????????????769b9341d937????????7?weeks?ago?????????2.489?MB
fedora??????????????rawhide?????????????0d20aec6529d????????7?weeks?ago?????????387?MB
fedora??????????????20??????????????????58394af37342????????7?weeks?ago?????????385.5?MB
fedora??????????????heisenbug???????????58394af37342????????7?weeks?ago?????????385.5?MB
fedora??????????????latest??????????????58394af37342????????7?weeks?ago?????????385.5?MB
import
docker import : 從歸檔文件中創(chuàng)建鏡像。
docker?import?[OPTIONS]?file|URL|-?[REPOSITORY[:TAG]]
OPTIONS 說明:
-c : 應(yīng)用 docker 指令創(chuàng)建鏡像;
-m : 提交時的說明文字;
從鏡像歸檔文件 my_ubuntu_v3.tar 創(chuàng)建鏡像,命名為 runoob/ubuntu:v4
docker?import??my_ubuntu_v3.tar?runoob/ubuntu:v4??
#?輸出
sha256:63ce4a6d6bc3fabb95dbd6c561404a309b7bdfc4e21c1d59fe9fe4299cbfea39
docker?images?runoob/ubuntu:v4
#?輸出
REPOSITORY??????????TAG?????????????????IMAGE?ID????????????CREATED?????????????SIZE
runoob/ubuntu???????v4??????????????????63ce4a6d6bc3????????20?seconds?ago??????142.1?MB
docker?images?ls?#?列出本地鏡像
啟動容器,下面兩句的效果是一樣的
-d 后臺運行 -i 交互 -t 終端
docker?run?-d?-i?-t?ubuntu:18.04?/bin/bash
docker?run?-dit?ubuntu:18.04?/bin/bash
進入后臺容器
docker?exec?[OPTIONS]?CONTAINER?COMMAND?[ARG...]
刪除 / 清除容器
docker?container?rm?[OPTIONS]?CONTAINER?[CONTAINER...]?#?刪除容器
docker?container?prune?#?清理掉停止的容器?
docker?ps?-a?#?查看所有的容器
docker?ps?#?查看運行著的容器
docker?container?ls?-a?#?查看終止?fàn)顟B(tài)的容器
docker?container?start?<容器?ID>/?#?啟動一個容器
docker?container?stop?<容器?ID>/?#?停止一個運行著的容器
docker?search?python?#?從?Docker?Hub?查找?python?鏡像?
docker?pull?python?#?從鏡像倉庫中拉取或者更新指定鏡像?
docker?container?prune?#?清理掉停止的容器
docker?rmi?<容器?ID>?#?刪除本地容器?
docker?tag?[OPTIONS]?IMAGE[:TAG]?[REGISTRYHOST/][USERNAME/]NAME[:TAG]??#?標(biāo)記本地鏡像,將其歸入某一倉庫
docker 命令的幾對關(guān)系
save 和 export
save 保存的是鏡像,export 保存的是容器
load 和 import
load 載入鏡像包,import 載入容器包,但兩者都會恢復(fù)為鏡像
load 不能對載入的進行進行命名,import 可以?
下載1:OpenCV-Contrib擴展模塊中文版教程 在「小白學(xué)視覺」公眾號后臺回復(fù):擴展模塊中文教程,即可下載全網(wǎng)第一份OpenCV擴展模塊教程中文版,涵蓋擴展模塊安裝、SFM算法、立體視覺、目標(biāo)跟蹤、生物視覺、超分辨率處理等二十多章內(nèi)容。 下載2:Python視覺實戰(zhàn)項目52講 在「小白學(xué)視覺」公眾號后臺回復(fù):Python視覺實戰(zhàn)項目,即可下載包括圖像分割、口罩檢測、車道線檢測、車輛計數(shù)、添加眼線、車牌識別、字符識別、情緒檢測、文本內(nèi)容提取、面部識別等31個視覺實戰(zhàn)項目,助力快速學(xué)校計算機視覺。 下載3:OpenCV實戰(zhàn)項目20講 在「小白學(xué)視覺」公眾號后臺回復(fù):OpenCV實戰(zhàn)項目20講,即可下載含有20個基于OpenCV實現(xiàn)20個實戰(zhàn)項目,實現(xiàn)OpenCV學(xué)習(xí)進階。 交流群
歡迎加入公眾號讀者群一起和同行交流,目前有SLAM、三維視覺、傳感器、自動駕駛、計算攝影、檢測、分割、識別、醫(yī)學(xué)影像、GAN、算法競賽等微信群(以后會逐漸細(xì)分),請掃描下面微信號加群,備注:”昵稱+學(xué)校/公司+研究方向“,例如:”張三?+?上海交大?+?視覺SLAM“。請按照格式備注,否則不予通過。添加成功后會根據(jù)研究方向邀請進入相關(guān)微信群。請勿在群內(nèi)發(fā)送廣告,否則會請出群,謝謝理解~

