?
Ce document utilise Manuel du site Web PHP chinois Libérer
若要列出可用命令,請運(yùn)行docker
沒有參數(shù)或執(zhí)行docker help
*
$ docker Usage: docker [OPTIONS] COMMAND [ARG...] docker [ --help | -v | --version ] A self-sufficient runtime for containers. Options: --config string Location of client config files (default "/root/.docker") -D, --debug Enable debug mode --help Print usage -H, --host value Daemon socket(s) to connect to (default []) -l, --log-level string Set the logging level ("debug"|"info"|"warn"|"error"|"fatal") (default "info") --tls Use TLS; implied by --tlsverify --tlscacert string Trust certs signed only by this CA (default "/root/.docker/ca.pem") --tlscert string Path to TLS certificate file (default "/root/.docker/cert.pem") --tlskey string Path to TLS key file (default "/root/.docker/key.pem") --tlsverify Use TLS and verify the remote -v, --version Print version information and quit Commands: attach Attach to a running container # […]
根據(jù)您的Docker系統(tǒng)配置,可能需要使用前面的每個(gè)docker
命令sudo
。為了避免必須使用sudo
該docker
命令,系統(tǒng)管理員可以創(chuàng)建一個(gè)名為的Unix組docker
并向其添加用戶。
有關(guān)安裝Docker或sudo
配置的更多信息,請參閱適用于您的操作系統(tǒng)的安裝說明。
為了便于參考,docker
命令行支持以下環(huán)境變量列表:
DOCKER_API_VERSION
要使用的API版本 (例如 1.19
)。
DOCKER_CONFIG
客戶端配置文件的位置。
DOCKER_CERT_PATH
身份驗(yàn)證密鑰的位置。
DOCKER_DRIVER
要使用的圖形驅(qū)動程序。
DOCKER_HOST
要連接到的守護(hù)進(jìn)程套接字。
DOCKER_NOWARN_KERNEL_VERSION
防止您的Linux內(nèi)核不適合Docker的警告。
DOCKER_RAMDISK
如果設(shè)置這將禁用'pivot_root'。
DOCKER_TLS_VERIFY
當(dāng)設(shè)置Docker使用TLS并驗(yàn)證遠(yuǎn)程。
DOCKER_CONTENT_TRUST
設(shè)置Docker時(shí)使用公證人簽名和驗(yàn)證圖像。等于--disable-content-trust=false
構(gòu)建,創(chuàng)建,拉,推,run。
DOCKER_CONTENT_TRUST_SERVER
要使用的公證服務(wù)器的URL。這默認(rèn)為與注冊表相同的URL。
DOCKER_HIDE_LEGACY_COMMANDS
設(shè)置后,Docker會在輸出中隱藏“l(fā)egacy”頂級命令(如docker rm
,和docker pull
)docker help
,并且僅打印Management commands
每個(gè)對象類型(例如,docker container
)。這可能會成為未來版本中的默認(rèn)值,此時(shí)會刪除此環(huán)境變量。
DOCKER_TMPDIR
臨時(shí)碼頭文件的位置。
因?yàn)镈ocker是使用GO開發(fā)的,所以您也可以使用GO運(yùn)行時(shí)使用的任何環(huán)境變量。特別是,你可能會發(fā)現(xiàn)這些有用的:
HTTP_PROXY
HTTPS_PROXY
NO_PROXY
這些Go環(huán)境變量不區(qū)分大小寫。見GO規(guī)格有關(guān)這些變量的詳細(xì)信息。
默認(rèn)情況下,Docker命令行將其配置文件存儲在目錄中調(diào)用.docker
的$HOME
目錄中。但是,您可以通過DOCKER_CONFIG
環(huán)境變量或--config
命令行選項(xiàng)指定不同的位置。如果兩者都指定,則該--config
選項(xiàng)將覆蓋DOCKER_CONFIG
環(huán)境變量。例如:
docker --config ~/testconfigs/ ps
指示Docker ~/testconfigs/
在運(yùn)行該ps
命令時(shí)使用目錄中的配置文件。
Docker管理配置目錄中的大部分文件,不應(yīng)修改它們。但是,您可以修改該config.json
文件以控制docker
命令行為的某些方面。
當(dāng)前,您可以修改docker
使用環(huán)境變量或命令行選項(xiàng)的命令行為。您還可以在config.json
來修改一些相同的行為。在使用這些機(jī)制時(shí),您必須記住它們之間的優(yōu)先級順序。命令行選項(xiàng)覆蓋環(huán)境變量和環(huán)境變量,覆蓋您在config.json
檔案。
config.json
文件存儲了幾個(gè)屬性的JSON編碼:
HttpHeaders
屬性指定一組標(biāo)題,以包含從Docker客戶端發(fā)送到守護(hù)程序的所有消息。Docker不會試圖解釋或理解這些頭文件; 它只是將它們放入消息中。Docker不允許這些頭文件改變它自己設(shè)置的頭文件。
該屬性psFormat
指定docker ps
輸出的默認(rèn)格式。當(dāng)這個(gè)--format
標(biāo)志沒有被提供時(shí)docker ps
,Docker的客戶端使用這個(gè)屬性。如果未設(shè)置此屬性,則客戶端將回到默認(rèn)表格格式。有關(guān)支持的格式化指令的列表,請參閱文檔中的格式部分docker ps
imagesFormat
的特性是默認(rèn)格式。docker images
輸出。當(dāng)--format
標(biāo)志沒有提供docker images
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker images
文獻(xiàn)資料
pluginsFormat
的特性是指定默認(rèn)格式。docker plugin ls
輸出。當(dāng)--format
標(biāo)志沒有提供docker plugin ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker plugin ls
文獻(xiàn)資料
servicesFormat
的特性是指定默認(rèn)格式。docker service ls
輸出。當(dāng)--format
標(biāo)志沒有提供docker service ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)的json格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker service ls
文獻(xiàn)資料
serviceInspectFormat
的特性是指定默認(rèn)格式。docker service inspect
輸出。當(dāng)--format
標(biāo)志沒有提供docker service inspect
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)的json格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker service inspect
文獻(xiàn)資料
statsFormat
的特性是指定默認(rèn)格式。docker stats
輸出。當(dāng)--format
標(biāo)志沒有提供docker stats
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker stats
文獻(xiàn)資料
secretFormat
的特性是指定默認(rèn)格式。docker secret ls
輸出。當(dāng)--format
標(biāo)志沒有提供docker secret ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker secret ls
文獻(xiàn)資料
nodesFormat
的特性是指定默認(rèn)格式。docker node ls
輸出。當(dāng)--format
標(biāo)志沒有提供docker node ls
命令,Docker的客戶端使用nodesFormat
.如果nodesFormat
未設(shè)置時(shí),客戶端將使用默認(rèn)表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker node ls
文獻(xiàn)資料
configFormat
的特性是指定默認(rèn)格式。docker config ls
輸出。當(dāng)--format
標(biāo)志沒有提供docker config ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認(rèn)表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker config ls
文獻(xiàn)資料
credsStore
的特性是指定外部二進(jìn)制文件作為默認(rèn)憑據(jù)存儲。設(shè)置此屬性時(shí),docker login
指定的二進(jìn)制文件中存儲憑據(jù)。docker-credential-<value>
在$PATH
如果未設(shè)置此屬性,則憑據(jù)將存儲在auths
屬性的配置。有關(guān)更多信息,請參見憑證存儲部分docker login
文獻(xiàn)資料
credHelpers
的特性是指定一組要優(yōu)先使用的憑據(jù)助手。credsStore
或auths
存儲和檢索特定注冊表的憑據(jù)時(shí)。如果設(shè)置了此屬性,則二進(jìn)制docker-credential-<value>
將用于存儲或檢索特定注冊表的憑據(jù)。有關(guān)更多信息,請參見資信助理員部分docker login
文獻(xiàn)資料
一旦連接到容器上,用戶就會從容器中分離出來,并使用CTRL-p CTRL-q
鍵序列。此分離鍵序列可使用detachKeys
特性。指定<sequence>
屬性的值。的格式<sequence>
是以逗號分隔的字母列表。-Z,或ctrl-
與下列任何一項(xiàng)相結(jié)合:
a-z(
單個(gè)小寫字母字母)
@(
at標(biāo)志)
[
(左括號)
\\
(2個(gè)反斜杠)
_
(下劃線)
^
(插入符號)
您的自定義適用于與您的Docker客戶端一起啟動的所有容器。用戶可以根據(jù)每個(gè)容器覆蓋您的自定義或默認(rèn)密鑰序列。為此,用戶指定--detach-keys
帶docker attach
,,,docker exec
,,,docker run
或docker start
命令。
以下是一個(gè)示例config.json
檔案:
{ "HttpHeaders": { "MyHeader": "MyValue" }, "psFormat": "table {{.ID}}\\t{{.Image}}\\t{{.Command}}\\t{{.Labels}}", "imagesFormat": "table {{.ID}}\\t{{.Repository}}\\t{{.Tag}}\\t{{.CreatedAt}}", "pluginsFormat": "table {{.ID}}\t{{.Name}}\t{{.Enabled}}", "statsFormat": "table {{.Container}}\t{{.CPUPerc}}\t{{.MemUsage}}", "servicesFormat": "table {{.ID}}\t{{.Name}}\t{{.Mode}}", "secretFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", "configFormat": "table {{.ID}}\t{{.Name}}\t{{.CreatedAt}}\t{{.UpdatedAt}}", "serviceInspectFormat": "pretty", "nodesFormat": "table {{.ID}}\t{{.Hostname}}\t{{.Availability}}", "detachKeys": "ctrl-e,e", "credsStore": "secretservice", "credHelpers": { "awesomereg.example.org": "hip-star", "unicorn.example.com": "vcbait" }}
如果使用自己的公證服務(wù)器和自簽名證書或內(nèi)部證書頒發(fā)機(jī)構(gòu),則需要將證書放在tls/<registry_url>/ca.crt
docker config目錄中。
或者,您可以通過將證書添加到系統(tǒng)的根證書頒發(fā)機(jī)構(gòu)列表中來全局信任該證書。
要列出任何命令的幫助,只需執(zhí)行該命令,然后是--help
選擇。
$ docker run --help Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...]Run a command in a new containerOptions: --add-host value Add a custom host-to-IP mapping (host:ip) (default []) -a, --attach value Attach to STDIN, STDOUT or STDERR (default [])...
單字符命令行選項(xiàng)可以組合,所以不需要輸入docker run -i -t --name test busybox sh
,您可以編寫docker run -it --name test busybox sh
。
布爾選項(xiàng)采取的形式-d=false
。如果您未指定該標(biāo)志,則在幫助文本中看到的值是設(shè)置的默認(rèn)值。如果您指定一個(gè)沒有值的布爾標(biāo)志,則會將該標(biāo)志設(shè)置為true
,而不考慮默認(rèn)值。
例如,運(yùn)行docker run -d
會將值設(shè)置為true
,所以您的容器將以 “分離”模式在后臺運(yùn)行。
默認(rèn)為true
(例如docker build --rm=true
)的選項(xiàng)只能通過明確設(shè)置為非默認(rèn)值來設(shè)置false
:
$ docker build --rm=false .
您可以-a=[]
在單個(gè)命令行中多次指定選項(xiàng),例如在以下命令中:
$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash $ docker run -a stdin -a stdout -a stderr ubuntu /bin/ls
有時(shí),多個(gè)選項(xiàng)可以調(diào)用更復(fù)雜的值字符串,如下所示-v
:
$ docker run -v /host:/container example/mysql
注意:由于實(shí)施中的限制,不要一起使用
-t
和-a stderr
選項(xiàng)pty
。所有stderr
的pty
模式都是簡單的stdout
。
--name=""
期望一個(gè)字符串等選項(xiàng),并且它們只能被指定一次。-c=0
期望一個(gè)整數(shù)等選項(xiàng),并且它們只能被指定一次。
Docker,Docker文件,CIL,命令行