Docker CLI docker container create常用命令

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows操作系统的机器上,也可以实现虚拟化。Docker是内核虚拟化,不使用Hypervisor是不完全虚拟化,依赖内核的特性实现资源隔离。本文主要介绍Docker CLI 中 docker container create常用命令。

1、docker container create简介

docker container create可以创建一个新容器。

参考文档:https://docs.docker.com/engine/reference/commandline/container_create/

2、docker container create语法

docker container create [OPTIONS] IMAGE [COMMAND] [ARG...]

用法参考:Docker CLI docker create 常用命令

3、选项说明

选项

默认

描述

--add-host

添加自定义主机到ip映射(host:ip)

--attach , -a

连接到STDIN、STDOUT或STDERR

--blkio-weight

Block IO(相对权重),在10到1000之间,或0禁用(默认0)

--blkio-weight-device

Block IO 权重(设备的相对权重)

--cap-add

添加Linux功能

--cap-drop

删除Linux功能

--cgroup-parent

容器的可选父cgroup

--cgroupns

API 1.41+

使用(host|private)‘host’:

在Docker主机的Cgroup命名空间中运行容器,

‘private’:在其自己的私有Cgroup命名空间中运行容器":

使用由守护进程上的default-cgroupns-mode

选项配置的Cgroup命名空间(默认)

--cidfile

将容器ID写入文件

--cpu-count

CPU计数(仅Windows)

--cpu-percent

CPU百分比(仅Windows)

--cpu-period

限制CPU CFS(完全公平调度器)周期

--cpu-quota

限制CPU CFS(完全公平调度器)配额

--cpu-rt-period

以微秒为单位限制CPU实时周期

--cpu-rt-runtime

以微秒为单位限制CPU的实时运行时间

--cpu-shares , -c

CPU份额(相对权重)

--cpus

cpu个数

--cpuset-cpus

允许执行的cpu(0-3、0、1)

--cpuset-mems

允许执行的MEMs (0-3, 0,1)

--device

添加主机设备到容器中

--device-cgroup-rule

在cgroup允许的设备列表中添加一条规则

--device-read-bps

限制从设备读取速率(每秒字节数)

--device-read-iops

限制从设备读取速率(每秒IO)

--device-write-bps

限制对设备的写入速率(每秒字节数)

--device-write-iops

限制对设备的写速率(每秒IO数)

--disable-content-trust

true

跳过镜像验证

--dns

设置自定义DNS服务器

--dns-opt

设置DNS选项

--dns-option

设置DNS选项

--dns-search

设置自定义DNS搜索域

--domainname

容器NIS域名

--entrypoint

覆盖镜像的默认入口点

--env , -e

设置环境变量

--env-file

读入一个环境变量文件

--expose

公开一个或一组端口

--gpus

API 1.40+

要添加到容器中的GPU设备(使用‘all’ 传递所有GPU)

--group-add

添加要加入的其他组

--health-cmd

命令运行以检查健康状况

--health-interval

间隔时间(ms|s|m|h)(默认为0)

--health-retries

连续的故障需要报告不健康

--health-start-period

容器在启动健康重试前

初始化的起始周期倒计时(ms|s|m|h)(默认0)

--health-timeout

允许一次检查运行的最大时间(ms|s|m|h)(默认0)

--help

打印使用方法

--hostname , -h

容器主机名

--init

在容器中运行init来转发信号并获取进程

--interactive , -i

保持STDIN打开,即使没有连接

--io-maxbandwidth

系统驱动器的最大IO带宽限制(仅Windows)

--io-maxiops

系统盘最大IOps限制(Windows专用)

--ip

IPv4地址(例如:172.30.100.104)

--ip6

IPv6地址(例如,2001:db8::33)

--ipc

IPC使用模式

--isolation

容器隔离技术

--kernel-memory

内核内存限制

--label , -l

在容器上设置元数据

--label-file

读取一行分隔的标签文件

--link

添加链接到另一个容器

--link-local-ip

容器IPv4/IPv6链路本地地址

--log-driver

容器的日志驱动程序

--log-opt

日志驱动程序选项

--mac-address

容器MAC地址(例如:92:d0:c6:0a:29:33)

--memory , -m

内存限制

--memory-reservation

内存软限制

--memory-swap

Swap limit等于内存加上Swap: ‘-1’以启用无限的交换

--memory-swappiness

-1

调优容器内存交换度(0到100)

--mount

将一个文件系统装载到容器

--name

为容器分配一个名称

--net

将容器连接到网络

--net-alias

为容器添加网络作用域别名

--network

将容器连接到网络

--network-alias

为容器添加网络作用域别名

--no-healthcheck

禁用容器指定的HEALTHCHECK

--oom-kill-disable

禁用 OOM Killer

--oom-score-adj

调整主机的OOM偏好(-1000到1000)

--pid

要使用的PID命名空间

--pids-limit

调整容器pid限制(设置为-1表示无限)

--platform

如果服务器支持多平台,请设置平台

--privileged

给这个容器提供扩展权限

--publish , -p

向主机发布容器的端口

--publish-all , -P

将所有暴露的端口发布到随机端口

--pull

missing

创建前拉取镜像 (always , |missing ,never)

--quiet , -q

抑制拉取输出

--read-only

以只读方式装载容器的根文件系统

--restart

no

重新启动策略,在容器退出时应用

--rm

容器退出时自动移除

--runtime

此容器使用的运行时

--security-opt

安全选项

--shm-size

/dev/shm的大小

--stop-signal

停止容器的信号

--stop-timeout

停止容器的超时时间(单位为秒)

--storage-opt

容器的存储驱动程序选项

--sysctl

Sysctl选项

--tmpfs

挂载tmpfs目录

--tty , -t

分配一个伪tty

--ulimit

Ulimit选项

--user , -u

Username 或 UID (格式: [:])

--userns

要使用的用户命名空间

--uts

要使用的UTS命名空间

--volume , -v

绑定挂载卷

--volume-driver

容器的可选卷驱动程序

--volumes-from

从指定的容器挂载卷

--workdir , -w

容器内的工作目录

4、子命令

命令

描述

docker container attach

将本地标准输入、输出和错误流附加到正在运行的容器

docker container commit

根据容器的更改创建一个新镜像

docker container cp

在容器和本地文件系统之间复制文件/文件夹

docker container create

创建一个新容器

docker container diff

检查容器文件系统上文件或目录的更改

docker container exec

在运行的容器中执行命令

docker container export

将容器的文件系统导出为tar归档文件

docker container inspect

显示一个或多个容器的详细信息

docker container kill

kill一个或多个正在运行的容器

docker container logs

获取容器日志

docker container ls

显示容器列表

docker container pause

暂停一个或多个容器中的所有进程

docker container port

列出容器的端口映射或特定映射

docker container prune

移除所有停止使用的容器

docker container rename

重命名容器

docker container restart

重新启动一个或多个容器

docker container rm

移除一个或多个容器

docker container run

从镜像创建并运行一个新容器

docker container start

启动一个或多个停止的容器

docker container stats

显示容器资源使用统计数据的实时stream

docker container stop

停止一个或多个正在运行的容器

docker container top

显示容器正在运行的进程

docker container unpause

取消暂停一个或多个容器中的所有进程

docker container update

更新一个或多个容器的配置

docker container wait

阻塞直到一个或多个容器停止,

然后打印它们的退出代码

推荐阅读
cjavapy编程之路首页