docker基础-命令

摘要

原创

  • docker 客户端命令行参数详解以及实例

完整参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
Usage:	docker [OPTIONS] COMMAND

A self-sufficient runtime for containers

Options:
--config string Location of client config files (default "/root/.docker")
-D, --debug Enable debug mode
-H, --host list Daemon socket(s) to connect to
-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

Management Commands:
builder Manage builds
config Manage Docker configs
container Manage containers
engine Manage the docker engine
image Manage images
network Manage networks
node Manage Swarm nodes
plugin Manage plugins
secret Manage Docker secrets
service Manage services
stack Manage Docker stacks
swarm Manage Swarm
system Manage Docker
trust Manage trust on Docker images
volume Manage volumes

Commands:
attach Attach local standard input, output, and error streams to a running container
build Build an image from a Dockerfile
commit Create a new image from a container's changes
cp Copy files/folders between a container and the local filesystem
create Create a new container
diff Inspect changes to files or directories on a container's filesystem
events Get real time events from the server
exec Run a command in a running container
export Export a container's filesystem as a tar archive
history Show the history of an image
images List images
import Import the contents from a tarball to create a filesystem image
info Display system-wide information
inspect Return low-level information on Docker objects
kill Kill one or more running containers
load Load an image from a tar archive or STDIN
login Log in to a Docker registry
logout Log out from a Docker registry
logs Fetch the logs of a container
pause Pause all processes within one or more containers
port List port mappings or a specific mapping for the container
ps List containers
pull Pull an image or a repository from a registry
push Push an image or a repository to a registry
rename Rename a container
restart Restart one or more containers
rm Remove one or more containers
rmi Remove one or more images
run Run a command in a new container
save Save one or more images to a tar archive (streamed to STDOUT by default)
search Search the Docker Hub for images
start Start one or more stopped containers
stats Display a live stream of container(s) resource usage statistics
stop Stop one or more running containers
tag Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
top Display the running processes of a container
unpause Unpause all processes within one or more containers
update Update configuration of one or more containers
version Show the Docker version information
wait Block until one or more containers stop, then print their exit codes

Run 'docker COMMAND --help' for more information on a command.

参数说明

环境变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
DOCKER_API_VERSION # 指定api版本 (e.g. 1.19)
DOCKER_CONFIG # 指定配置文件位置
DOCKER_CERT_PATH # 指定客户端证书存储位置,如需要登陆https的镜像仓库会用到
DOCKER_CLI_EXPERIMENTAL # 客户端是否开启实验特性 (e.g. enabled or disabled)
DOCKER_DRIVER # 指定的驱动类型
DOCKER_HOST # 指定连接dockerd的sock位置(e.g. /var/run/docker.sock)
DOCKER_NOWARN_KERNEL_VERSION # 关闭docker提示内核版本不适合docker的警告
DOCKER_RAMDISK # 是否禁用 ‘pivot_root’. (Todo 待测试)
DOCKER_STACK_ORCHESTRATOR # 使用docker的stack管理命令时的默认协调器
DOCKER_TLS # 安全相关,是否开启tls认证
DOCKER_TLS_VERIFY # 安全相关,When set Docker uses TLS and verifies the remote.
DOCKER_CONTENT_TRUST # 是否开启签名认证
DOCKER_CONTENT_TRUST_SERVER # 配置签名认证的镜像中心url
DOCKER_HIDE_LEGACY_COMMANDS # 是否隐藏历史遗留的顶级操作参数
DOCKER_TMPDIR # 临时文件目录
DOCKER_CONTEXT # 指定要使用的上下文(用“docker context use”覆盖DOCKER_HOST环境变量和默认上下文设置)
DOCKER_DEFAULT_PLATFORM Specify the default platform for the commands that take the --platform flag.

# Go运行时可以配置的环境变量
HTTP_PROXY
HTTPS_PROXY
NO_PROXY

基础参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Options:
# 客户端配置文件位置,配置用于存储镜像仓库登录信息等信息
--config string Location of client config files (default "/root/.docker")
# 是否开启debug模式
-D, --debug Enable debug mode
# 指定与dockerd交互的sock位置
-H, --host list Daemon socket(s) to connect to
# 指定打印日志级别
-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

管理参数

随着docker功能逐渐庞大,参数越来越多,原本命令行参数大多会迁移到分组参数下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Management Commands:
# 管理build缓存,如删除无用的build缓存
builder Manage builds
# 管理swarm配置,开启了--live-restore模式无法使用swarm
config Manage Docker configs
# 管理容器,如 docker container ls 将取代 docker ps 等
container Manage containers
# docker升级、认证ee模式等
engine Manage the docker engine
# 管理镜像,如 docker image ls 将取代 docker images
image Manage images
# 管理容器网络
network Manage networks
# 管理swarm的node
node Manage Swarm nodes
# 管理插件
plugin Manage plugins
# swarm相关
secret Manage Docker secrets
# swarm相关 管理service
service Manage services
# 管理stack
stack Manage Docker stacks
# 管理swarm
swarm Manage Swarm
# 系统管理,可以查看容器、镜像、卷、build缓存等使用空间,清理残留等
system Manage Docker
trust Manage trust on Docker images
# 管理docker的卷
volume Manage volumes

命令行参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Commands:
attach # 将本地的标准输出附加在一个正在运行的容器上
build # 通过DOCKERFILE创建一个镜像
commit # 将一个镜像打包成一个镜像(会将运行层打包,commit过程中容器会进入暂停状态防止数据不一致)
cp # 在本地和容器之间进行文件、目录的拷贝
create # 创建一个新的容器,容器进入Created状态,不会进入运行态,通过start启动容器
diff # 查看一个容器相对原始镜像的文件、目录变化
events # 查看docker事件历史
exec # 在容器中运行命令
export # 将一个容器导出成一个容器镜像包(类似先执行commit、然后执行save)
history # 查看一个镜像的构建历史()
images # 查看本地镜像列表
import # 通过容器镜像包导入生成一个镜像,对应export参数
info # 查看docker系统参数
inspect # 查看一个docker对象的详细信息(镜像、容器等)
kill # 杀死正在运行的容器
load # 通过镜像包导入镜像(对应save参数)
login # 登录镜像仓库
logout # 登出镜像仓库
logs # 打印容器的日志
pause # 将容器置为冻结状态
port # 打印容器的端口映射关系
ps # 打印容器列表
pull # 从镜像中心拉取镜像
push # 将镜像推送到镜像中心
rename # 容器改名
restart # 重启容器
rm # 删除容器
rmi # 删除镜像
run # 创建一个启动状态的容器
save # 将镜像打包导出成镜像包
search # 从镜像中心查找镜像
start # 启动容器
stats # 查看容器的资源使用情况
stop # 停止容器
tag # 给镜像打标签
top # 查看容器进程在宿主机的信息
unpause # 解除容器冻结状态
update # 更新容器的配置信息(待测试)
version # 打印版本信息
wait # 等待容器退出并打印状态码

参数分类

基础操作

1
2
3
4
info        # 查看docker系统参数
inspect # 查看一个docker对象的详细信息(镜像、容器等)
version # 打印版本信息
events # 查看docker事件历史

镜像操作

1
2
3
4
5
6
7
8
9
10
11
build       # 通过DOCKERFILE创建一个镜像
commit # 将一个镜像打包成一个镜像(会将运行层打包,commit过程中容器会进入暂停状态防止数据不一致)
load # 通过镜像包导入镜像(对应save参数)
history # 查看一个镜像的构建历史()
images # 查看本地镜像列表
export # 将一个容器导出成一个容器镜像包(类似先执行commit、然后执行save)
import # 通过容器镜像包导入生成一个镜像,对应export参数
rmi # 删除镜像
save # 将镜像打包导出成镜像包
search # 从镜像中心查找镜像
tag # 给镜像打标签

镜像仓库

1
2
3
4
login       # 登录镜像仓库
logout # 登出镜像仓库
pull # 从镜像中心拉取镜像
push # 将镜像推送到镜像中心

容器生命周期

1
2
3
4
5
6
7
8
9
10
11
run         # 创建一个启动状态的容器
start # 启动容器
stop # 停止容器
restart # 重启容器
pause # 将容器置为冻结状态
unpause # 解除容器冻结状态
exec # 在容器中运行命令
create # 创建一个新的容器,容器进入Created状态,不会进入运行态,通过start启动容器
rm # 删除容器
kill # 杀死正在运行的容器
update # 更新容器的配置信息,如 cpu、mem限制等

容器操作

1
2
3
4
5
6
7
8
9
10
attach      # 将本地的标准输出附加在一个正在运行的容器上
cp # 在本地和容器之间进行文件、目录的拷贝
diff # 查看一个容器相对原始镜像的文件、目录变化
logs # 打印容器的日志
port # 打印容器的端口映射关系
stats # 查看容器的资源实时使用情况
wait # 等待容器退出并打印状态码
top # 查看容器进程在宿主机的信息
ps # 打印容器列表
rename # 容器改名

参数详解

info

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Containers: 17 # 容器数量
Running: 14 # 运行中
Paused: 0 # 冻结
Stopped: 3 # 停止状态
Images: 19 # 镜像数量
Server Version: 18.09.9 # 版本
Storage Driver: overlay2 # 存储类型
Backing Filesystem: extfs # 文件系统
Supports d_type: true # 是否开启d_type特性
Native Overlay Diff: true
Logging Driver: json-file # 日志引擎格式
Cgroup Driver: cgroupfs # cgroup引擎
Plugins: # 加载的插件
Volume: local # 卷
Network: bridge host macvlan null overlay # 网络
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog # 支持的日志引擎
Swarm: inactive # swarm状态
Runtimes: runc # 运行时
Default Runtime: runc # 默认运行时
Init Binary: /home/work/docker_dxm/bin/docker-init # 初始化命令
containerd version: b34a5c8af56e510852c35414db4c1f4fa6172339
runc version: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
init version: fec3683
Security Options: # 安全选项
seccomp
Profile: default
Kernel Version: 4.20.13-1.el7.elrepo.x86_64 # 内核版本
Operating System: CentOS Linux 7 (Core) # 系统版本
OSType: linux # os类型
Architecture: x86_64 # 系统架构
CPUs: 32
Total Memory: 125.6GiB
Name: instance-vcp50rqb-05.bcc-bdbl # 主机名
ID: OLMB:TFZ2:SGQ5:ZCEW:BCG6:QQJ3:ZIPC:6JWF:G7DN:2TIY:SOHV:RHW3
Docker Root Dir: /home/work/docker_dxm/data/container # 数据目录
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Labels:
Experimental: false
Insecure Registries: # 信任的镜像仓库
10.157.23.249:8081
r.duxiaoman-int.com
127.0.0.0/8
Registry Mirrors: # 默认镜像仓库
https://registry.docker-cn.com/
http://10.157.23.249:8081/
Live Restore Enabled: true # live模式
Product License: Community Engine # ce版本

--filter

  • 选项后跟的都是键值对 key=value (可不带引号)
  • 如果有多个过滤条件,就多次使用 filter 选项
  • 相同条件之间的关系是或,不同条件之间的关系是与
  • id 和 name,支持正则表达式,使用起来非常灵活 ^/bingohuang$
  • 精确匹配 name 为 bingohuang 的容器。容器实际名称开头是有一个正斜线 /
过滤条件 描述
id 容器id
label label={key} or label={key}={value}
exited 容器退出的状态码
status created\restarting\running\removing\paused\exited\dead
ancestor 通过image匹配容器
before 容器id or 容器name :查看指定容器前创建的所有容器
since 容器id or 容器name :查看指定容器后创建的所有容器
volume volume name or volume 挂载点
network network id or name
health starting\healthy\unhealthy\none
1
2
3
4
5
6
7
8
9
10
docker ps -f id=0659552ac9bf
docker ps -f label=app=web01
docker ps -f exited=0
docker ps -f status=running
docker ps -f ancestor=centos
docker ps -f before=web01
docker ps -f since=web01
docker ps -f volume=/home/work/
docker ps -f network=host
docker ps -f health=healthy

--format

占位符 描述
.ID 容器id
.Image label={key} or label={key}={value}
.Command 容器退出的状态码
.CreateAt created\restarting\running\removing\paused\exited\dead
.RunningFor 通过image匹配容器
.Ports 容器id or 容器name :查看指定容器前创建的所有容器
.Status 容器id or 容器name :查看指定容器后创建的所有容器
.Size volume name or volume 挂载点
.Names network id or name
.Labels
.Mounts
.Networks
1
2
3
4
5
6
7
8
9
10
docker ps -f id=0659552ac9bf
docker ps -f label=app=web01
docker ps -f exited=0
docker ps -f status=running
docker ps -f ancestor=centos
docker ps -f before=web01
docker ps -f since=web01
docker ps -f volume=/home/work/
docker ps -f network=host
docker ps -f health=healthy

build

通过DOCKERFILE创建镜像的时候可以通过一些参数来给创建的镜像做一些配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
Options:

--add-host list Add a custom host-to-IP mapping (host:ip)
--build-arg list Set build-time variables
--cache-from strings Images to consider as cache sources
--cgroup-parent string Optional parent cgroup for the container
--compress Compress the build context using gzip
--cpu-period int Limit the CPU CFS (Completely Fair Scheduler) period
--cpu-quota int Limit the CPU CFS (Completely Fair Scheduler) quota
-c, --cpu-shares int CPU shares (relative weight)
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
--disable-content-trust Skip image verification (default true)
-f, --file string Name of the Dockerfile (Default is 'PATH/Dockerfile')
--force-rm Always remove intermediate containers
--iidfile string Write the image ID to the file
--isolation string Container isolation technology
--label list Set metadata for an image
-m, --memory bytes Memory limit
--memory-swap bytes Swap limit equal to memory plus swap: '-1' to enable unlimited swap
--network string Set the networking mode for the RUN instructions during build (default "default")
--no-cache Do not use cache when building the image
--pull Always attempt to pull a newer version of the image
-q, --quiet Suppress the build output and print image ID on success
--rm Remove intermediate containers after a successful build (default true)
--security-opt strings Security options
--shm-size bytes Size of /dev/shm
-t, --tag list Name and optionally a tag in the 'name:tag' format
--target string Set the target build stage to build.
--ulimit ulimit Ulimit options (default [])

exec

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Usage:	docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

Run a command in a running container

Options:
# 指定后台运行命令
-d, --detach Detached mode: run command in the background
--detach-keys string Override the key sequence for detaching a container
# 指定执行时的环境变量
-e, --env list Set environment variables
# 保持stdin一直处于打开状态
-i, --interactive Keep STDIN open even if not attached
--privileged Give extended privileges to the command
# 分配一个tty
-t, --tty Allocate a pseudo-TTY
# 指定执行用户
-u, --user string Username or UID (format: <name|uid>[:<group|gid>])
# 指定工作目录
-w, --workdir string Working directory inside the container

run/create

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
Usage:	docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Run a command in a new container

Options:
# 添加自定义host信息
--add-host list Add a custom host-to-IP mapping (host:ip)
# 启动后附着在容器的标准输入或标准输出上
-a, --attach list Attach to STDIN, STDOUT or STDERR
# 磁盘io限制(依赖磁盘io算法是否cfq:cat /sys/block/sda/queue/scheduler)
--blkio-weight uint16 Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
--blkio-weight-device list Block IO weight (relative device weight) (default [])
# 容器能使用的空间大小限制,用于devicemapper,overlay2的xfs是否可使用待测试
--cap-add list Add Linux capabilities
--cap-drop list Drop Linux capabilities
#
--cgroup-parent string Optional parent cgroup for the container
# 将容器id保存到一个文件中
--cidfile string Write the container ID to the file
# cpu配额限制,指定容器对cpu的使用在多长时间内做一次重新分配
--cpu-period int Limit CPU CFS (Completely Fair Scheduler) period
# 指定在这个周期内有多少时间可以来跑这个容器
--cpu-quota int Limit CPU CFS (Completely Fair Scheduler) quota
--cpu-rt-period int Limit CPU real-time period in microseconds
--cpu-rt-runtime int Limit CPU real-time runtime in microseconds
# 指定容器可以使用的cpu配比,1024为100%
-c, --cpu-shares int CPU shares (relative weight)
# 容器可使用的cpu核心数
--cpus decimal Number of CPUs
# 绑定容器可以使用的cpu核心
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
# 绑定容器可以使用的内存节点
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
# 容器启动后再后台运行,此时容器通过网络资源和共享卷交互,不再监听终端命令
-d, --detach Run container in background and print container ID
--detach-keys string Override the key sequence for detaching a container
--device list Add a host device to the container
--device-cgroup-rule list Add a rule to the cgroup allowed devices list
--device-read-bps list Limit read rate (bytes per second) from a device (default [])
--device-read-iops list Limit read rate (IO per second) from a device (default [])
--device-write-bps list Limit write rate (bytes per second) to a device (default [])
--device-write-iops list Limit write rate (IO per second) to a device (default [])
# 是否跳过镜像验证
--disable-content-trust Skip image verification (default true)
# 指定dns
--dns list Set custom DNS servers
# 设置dns参数
--dns-option list Set DNS options
# 设置dns搜索域
--dns-search list Set custom DNS search domains
# 指定容器默认执行的入口命令
--entrypoint string Overwrite the default ENTRYPOINT of the image
# 指定容器的环境变量
-e, --env list Set environment variables
# 指定容器使用的环境变量文件
--env-file list Read in a file of environment variables
# 指定容器暴露的端口
--expose list Expose a port or a range of ports
# 给容器中运行用户添加默认的组
--group-add list Add additional groups to join
# 容器健康检查命令
--health-cmd string Command to run to check health
# 健康检查的时间间隔
--health-interval duration Time between running the check (ms|s|m|h) (default 0s)
# 健康检查连续多少次失败会认为不健康
--health-retries int Consecutive failures needed to report unhealthy
# 健康检查连续多少次会认为健康
--health-start-period duration Start period for the container to initialize before starting health-retries countdown (ms|s|m|h) (default 0s)
# 健康检查超时时间
--health-timeout duration Maximum time to allow one check to run (ms|s|m|h) (default 0s)
# 打印帮助信息
--help Print usage
# 指定容器的主机名
-h, --hostname string Container host name
# 在容器中运行一个父进程用来接收信号和管理进程
--init Run an init inside the container that forwards signals and reaps processes
# 保持stdin一直处于打开状态
-i, --interactive Keep STDIN open even if not attached
# 指定容器的ipv4地址
--ip string IPv4 address (e.g., 172.30.100.104)
# 指定容器的ipv6地址
--ip6 string IPv6 address (e.g., 2001:db8::33)
# 容器默认都启用了IPC命名空间。
# IPC(POSIX / SysV IPC)命名空间提供命名的共享内存段,信号量和消息队列的分离。
# 共享内存段用来加速内部进程以内存速度通信,而不是通过管道或网络。共享内存通常由数据库和定制(通常是C / OpenMPI,C ++ /使用boost库)的高性能应用程序用于科学计算和金融服务行业。如果这些类型的应用程序分成多个容器,可能需要共享容器的IPC机制。
--ipc string IPC mode to use
# 一般用于windows,设置容器隔离技术
--isolation string Container isolation technology
# 核心内存,在容器做内存限制的时候可以设置此参数以免程序占用过多内存影响系统服务,同时可以在核心内存使用过多时阻止新进程被创建。
--kernel-memory bytes Kernel memory limit
# 给容器设置标签
-l, --label list Set meta data on a container
# 通过文件给容器设置标签
--label-file list Read in a line delimited file of labels
# 将两个容器建立链接(设置环境变量和/etc/hosts)
--link list Add link to another container
# 链接一个本地ip(没啥用)
--link-local-ip list Container IPv4/IPv6 link-local addresses
# 设置容器的日志驱动
--log-driver string Logging driver for the container
# 日志驱动参数
--log-opt list Log driver options
# 设置容器的mac地址
--mac-address string Container MAC address (e.g., 92:d0:c6:0a:29:33)
# 容器内存限制
-m, --memory bytes Memory limit
# 容器内存软限制
--memory-reservation bytes Memory soft limit
# 容器swap内存限制
--memory-swap bytes Swap limit equal to memory plus swap: '-1' to enable unlimited swap
--memory-swappiness int Tune container memory swappiness (0 to 100) (default -1)
# 给容器挂载一个目录
--mount mount Attach a filesystem mount to the container
# 指定容器的名字
--name string Assign a name to the container
# 设置容器的网络模式
--network string Connect a container to a network (default "default")

--network-alias list Add network-scoped alias for the container
--no-healthcheck Disable any container-specified HEALTHCHECK
# 是否关闭oom
--oom-kill-disable Disable OOM Killer
# 设置oom优先级,数值越大优先级越高
--oom-score-adj int Tune host's OOM preferences (-1000 to 1000)
--pid string PID namespace to use
--pids-limit int Tune container pids limit (set -1 for unlimited)
# 给容器开启高权模式
--privileged Give extended privileges to this container
# 给容器设置端口映射
-p, --publish list Publish a container's port(s) to the host
# 将容器的所有开放端口设置随机映射
-P, --publish-all Publish all exposed ports to random ports
--read-only Mount the container's root filesystem as read only
# 设置容器是否自启动
--restart string Restart policy to apply when a container exits (default "no")
# 当日志进入exit状态是会自动删除
--rm Automatically remove the container when it exits
--runtime string Runtime to use for this container
--security-opt list Security Options
--shm-size bytes Size of /dev/shm
--sig-proxy Proxy received signals to the process (default true)
--stop-signal string Signal to stop a container (default "SIGTERM")
--stop-timeout int Timeout (in seconds) to stop a container
--storage-opt list Storage driver options for the container
# 设置容器的内核参数
--sysctl map Sysctl options (default map[])
# 挂载一个tmpfs目录
--tmpfs list Mount a tmpfs directory
# 分配一个tty
-t, --tty Allocate a pseudo-TTY
--ulimit ulimit Ulimit options (default [])
# 指定容器运行用户
-u, --user string Username or UID (format: <name|uid>[:<group|gid>])
# 指定容器namespace
--userns string User namespace to use
# UTS命名空间用于设置主机名和对该命名空间中正在运行的进程可见的域
--uts string UTS namespace to use
# 卷挂载,可挂载宿主机目录、卷、文件等
-v, --volume list Bind mount a volume
--volume-driver string Optional volume driver for the container
# 继承其他容器挂载的卷
--volumes-from list Mount volumes from the specified container(s)
# 指定容器的工作目录
-w, --workdir string Working directory inside the container

update

参数可以参照run中的参数说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Usage:	docker update [OPTIONS] CONTAINER [CONTAINER...]

Update configuration of one or more containers

Options:
--blkio-weight uint16 Block IO (relative weight), between 10 and 1000, or 0 to disable (default 0)
--cpu-period int Limit CPU CFS (Completely Fair Scheduler) period
--cpu-quota int Limit CPU CFS (Completely Fair Scheduler) quota
--cpu-rt-period int Limit the CPU real-time period in microseconds
--cpu-rt-runtime int Limit the CPU real-time runtime in microseconds
-c, --cpu-shares int CPU shares (relative weight)
--cpus decimal Number of CPUs
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
--kernel-memory bytes Kernel memory limit
-m, --memory bytes Memory limit
--memory-reservation bytes Memory soft limit
--memory-swap bytes Swap limit equal to memory plus swap: '-1' to enable unlimited swap
--restart string Restart policy to apply when a container exits