?
This document uses PHP Chinese website manual Release
若要列出可用命令,請運行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)配置,可能需要使用前面的每個docker
命令sudo
。為了避免必須使用sudo
該docker
命令,系統(tǒng)管理員可以創(chuàng)建一個名為的Unix組docker
并向其添加用戶。
有關(guān)安裝Docker或sudo
配置的更多信息,請參閱適用于您的操作系統(tǒng)的安裝說明。
為了便于參考,docker
命令行支持以下環(huán)境變量列表:
DOCKER_API_VERSION
要使用的API版本 (例如 1.19
)。
DOCKER_CONFIG
客戶端配置文件的位置。
DOCKER_CERT_PATH
身份驗證密鑰的位置。
DOCKER_DRIVER
要使用的圖形驅(qū)動程序。
DOCKER_HOST
要連接到的守護進程套接字。
DOCKER_NOWARN_KERNEL_VERSION
防止您的Linux內(nèi)核不適合Docker的警告。
DOCKER_RAMDISK
如果設(shè)置這將禁用'pivot_root'。
DOCKER_TLS_VERIFY
當設(shè)置Docker使用TLS并驗證遠程。
DOCKER_CONTENT_TRUST
設(shè)置Docker時使用公證人簽名和驗證圖像。等于--disable-content-trust=false
構(gòu)建,創(chuàng)建,拉,推,run。
DOCKER_CONTENT_TRUST_SERVER
要使用的公證服務(wù)器的URL。這默認為與注冊表相同的URL。
DOCKER_HIDE_LEGACY_COMMANDS
設(shè)置后,Docker會在輸出中隱藏“l(fā)egacy”頂級命令(如docker rm
,和docker pull
)docker help
,并且僅打印Management commands
每個對象類型(例如,docker container
)。這可能會成為未來版本中的默認值,此時會刪除此環(huán)境變量。
DOCKER_TMPDIR
臨時碼頭文件的位置。
因為Docker是使用GO開發(fā)的,所以您也可以使用GO運行時使用的任何環(huán)境變量。特別是,你可能會發(fā)現(xiàn)這些有用的:
HTTP_PROXY
HTTPS_PROXY
NO_PROXY
這些Go環(huán)境變量不區(qū)分大小寫。見GO規(guī)格有關(guān)這些變量的詳細信息。
默認情況下,Docker命令行將其配置文件存儲在目錄中調(diào)用.docker
的$HOME
目錄中。但是,您可以通過DOCKER_CONFIG
環(huán)境變量或--config
命令行選項指定不同的位置。如果兩者都指定,則該--config
選項將覆蓋DOCKER_CONFIG
環(huán)境變量。例如:
docker --config ~/testconfigs/ ps
指示Docker ~/testconfigs/
在運行該ps
命令時使用目錄中的配置文件。
Docker管理配置目錄中的大部分文件,不應(yīng)修改它們。但是,您可以修改該config.json
文件以控制docker
命令行為的某些方面。
當前,您可以修改docker
使用環(huán)境變量或命令行選項的命令行為。您還可以在config.json
來修改一些相同的行為。在使用這些機制時,您必須記住它們之間的優(yōu)先級順序。命令行選項覆蓋環(huán)境變量和環(huán)境變量,覆蓋您在config.json
檔案。
config.json
文件存儲了幾個屬性的JSON編碼:
HttpHeaders
屬性指定一組標題,以包含從Docker客戶端發(fā)送到守護程序的所有消息。Docker不會試圖解釋或理解這些頭文件; 它只是將它們放入消息中。Docker不允許這些頭文件改變它自己設(shè)置的頭文件。
該屬性psFormat
指定docker ps
輸出的默認格式。當這個--format
標志沒有被提供時docker ps
,Docker的客戶端使用這個屬性。如果未設(shè)置此屬性,則客戶端將回到默認表格格式。有關(guān)支持的格式化指令的列表,請參閱文檔中的格式部分docker ps
imagesFormat
的特性是默認格式。docker images
輸出。當--format
標志沒有提供docker images
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker images
文獻資料
pluginsFormat
的特性是指定默認格式。docker plugin ls
輸出。當--format
標志沒有提供docker plugin ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker plugin ls
文獻資料
servicesFormat
的特性是指定默認格式。docker service ls
輸出。當--format
標志沒有提供docker service ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認的json格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker service ls
文獻資料
serviceInspectFormat
的特性是指定默認格式。docker service inspect
輸出。當--format
標志沒有提供docker service inspect
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認的json格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker service inspect
文獻資料
statsFormat
的特性是指定默認格式。docker stats
輸出。當--format
標志沒有提供docker stats
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker stats
文獻資料
secretFormat
的特性是指定默認格式。docker secret ls
輸出。當--format
標志沒有提供docker secret ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker secret ls
文獻資料
nodesFormat
的特性是指定默認格式。docker node ls
輸出。當--format
標志沒有提供docker node ls
命令,Docker的客戶端使用nodesFormat
.如果nodesFormat
未設(shè)置時,客戶端將使用默認表格式。有關(guān)受支持的格式化指令的列表,請參見格式化部分docker node ls
文獻資料
configFormat
的特性是指定默認格式。docker config ls
輸出。當--format
標志沒有提供docker config ls
命令,Docker的客戶端使用此屬性。如果未設(shè)置此屬性,則客戶端將返回到默認表格式。有關(guān)支持的格式指令列表,請參見格式化部分docker config ls
文獻資料
credsStore
的特性是指定外部二進制文件作為默認憑據(jù)存儲。設(shè)置此屬性時,docker login
指定的二進制文件中存儲憑據(jù)。docker-credential-<value>
在$PATH
如果未設(shè)置此屬性,則憑據(jù)將存儲在auths
屬性的配置。有關(guān)更多信息,請參見憑證存儲部分docker login
文獻資料
credHelpers
的特性是指定一組要優(yōu)先使用的憑據(jù)助手。credsStore
或auths
存儲和檢索特定注冊表的憑據(jù)時。如果設(shè)置了此屬性,則二進制docker-credential-<value>
將用于存儲或檢索特定注冊表的憑據(jù)。有關(guān)更多信息,請參見資信助理員部分docker login
文獻資料
一旦連接到容器上,用戶就會從容器中分離出來,并使用CTRL-p CTRL-q
鍵序列。此分離鍵序列可使用detachKeys
特性。指定<sequence>
屬性的值。的格式<sequence>
是以逗號分隔的字母列表。-Z,或ctrl-
與下列任何一項相結(jié)合:
a-z(
單個小寫字母字母)
@(
at標志)
[
(左括號)
\\
(2個反斜杠)
_
(下劃線)
^
(插入符號)
您的自定義適用于與您的Docker客戶端一起啟動的所有容器。用戶可以根據(jù)每個容器覆蓋您的自定義或默認密鑰序列。為此,用戶指定--detach-keys
帶docker attach
,,,docker exec
,,,docker run
或docker start
命令。
以下是一個示例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ā)機構(gòu),則需要將證書放在tls/<registry_url>/ca.crt
docker config目錄中。
或者,您可以通過將證書添加到系統(tǒng)的根證書頒發(fā)機構(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 [])...
單字符命令行選項可以組合,所以不需要輸入docker run -i -t --name test busybox sh
,您可以編寫docker run -it --name test busybox sh
。
布爾選項采取的形式-d=false
。如果您未指定該標志,則在幫助文本中看到的值是設(shè)置的默認值。如果您指定一個沒有值的布爾標志,則會將該標志設(shè)置為true
,而不考慮默認值。
例如,運行docker run -d
會將值設(shè)置為true
,所以您的容器將以 “分離”模式在后臺運行。
默認為true
(例如docker build --rm=true
)的選項只能通過明確設(shè)置為非默認值來設(shè)置false
:
$ docker build --rm=false .
您可以-a=[]
在單個命令行中多次指定選項,例如在以下命令中:
$ docker run -a stdin -a stdout -i -t ubuntu /bin/bash $ docker run -a stdin -a stdout -a stderr ubuntu /bin/ls
有時,多個選項可以調(diào)用更復雜的值字符串,如下所示-v
:
$ docker run -v /host:/container example/mysql
注意:由于實施中的限制,不要一起使用
-t
和-a stderr
選項pty
。所有stderr
的pty
模式都是簡單的stdout
。
--name=""
期望一個字符串等選項,并且它們只能被指定一次。-c=0
期望一個整數(shù)等選項,并且它們只能被指定一次。
Docker,Docker文件,CIL,命令行