文章目录
0. 容器配置参数
0.1. 运行模式参数
选项 | 类型 | 说明 | |
---|---|---|---|
-a | --attach | list | 是否绑定到标准输入输出和错误 |
--entrypoint | string | 镜像存在入口命令时,覆盖为新的命令 | |
--expose | list | 指定容器暴露出来的端口或端口范围 | |
--group-add | list | 运行容器的用户组 | |
-i | --interactive | 保持标准输入打开,默认false | |
--ipc | string | 容器IPC命名空间,可以为其他容器或主机 | |
--isolation | string | 容器使用的隔离机制 | |
--log-driver | string | 指定容器的日志驱动类型 | |
--log-opt | list | 传递给日志驱动的选项 | |
--network | string | 指定容器网络模式,包括bridge、none、其他容器内网络、host的网络或某个现有网络等 | |
--network-alias | list | 容器在网络中的别名 | |
-P | --publish-all | 通过NAT机制将容器标记暴露的端口自动映射到本地主机的临时端口 | |
-p | --publish | list | 指定如何映射到本地主机端口 |
--pid | string | 容器的PID命名空间 | |
--restart | string | 容器的重启策略,包括no,on-failure[:max-retry]、always、unless-stopped等 | |
--rm | 容器退出后是否自动删除,不能跟-d同时使用 | ||
-t | --tty | 是否分配一个伪终端,默认为false | |
--tmpfs | list | 挂载临时文件系统到容器 | |
--userns | string | 启用userns-remap时配置用户命名空间的模式 | |
--uts | string | 容器的UTS命名空间 | |
-v | --volume | list | 挂载主机上的文件卷到容器内 |
--volume-driver | string | 挂载文件卷的驱动类型 | |
--volumes-from | list | 从其他容器挂载卷 | |
-w | --workdir | stirng | 容器内的默认工作目录 |
0.2. 容器环境和参数
选项 | 类型 | 说明 | |
---|---|---|---|
--add-host | list | 在容器内添加一个主机名到IP地址的映射关系 hosts | |
--device | list | 映射物理机上的设备到容器内 | |
--dns | list | 自定义的DNS服务器 | |
--dns-option | list | 自定义的DNS选项 | |
--dns-search | list | DNS搜索域 | |
-e | --env | list | 指定容器内环境变量 |
--env-file | list | 从文件中读取环境变量到容器内 | |
-h | --hostname | string | 指定容器内的主机名 |
--ip | string | 指定容器的IPv4地址 | |
--ip6 | string | 指定容器的IPv6地址 | |
--link | list | 连接到其他容器 | |
--mac-address | string | 指定容器的Mac地址 | |
--name | string | 指定容器的别名 |
0.3. 容器资源限制和安全保护参数
选项 | 类型 | 说明 | |
---|---|---|---|
-–blkio-weight | uint16 | 容器读写块设备的IO性能权重,默认为0 | |
–-blkio-weight-device | list | 指定各个设备的IO性能权重 | |
–-cap-add | list | 增加容器的linux指定安全能力 | |
–-cap-drop | list | 移除容器的liunux指定安全能力 | |
–-cgroup-parent | string | 容器cgroups限制的创建路径 | |
–-cidfile | string | 指定容器进程id号写到的文件 | |
–-cpu-period | int | 限制容器在CFS调度器下的CPU占用时间片 | |
–-cpu-quota | int | 限制容器在CFS调度器下CPU配额 | |
–-cpu-rt-period | int | Limit CPU real-time period in microseconds | |
–-cpu-rt-runtime | int | Limit CPU real-time runtime in microseconds | |
-c | –-cpu-shares | int | 允许容器使用的CPU资源的相对权重,默认一个容器能用满一个核的CPU |
–-cpus | decimal | Number of CPUs | |
–-cpuset-cpus | string | 限制容器能使用哪些CPU核心 | |
–-cpuset-mems | string | NUMA架构下使用哪些核心的内存 | |
--device-cgroup-rule | list | Add a rule to the cgroup allowed devices list | |
–-device-read-bps | list | 挂载设备的读吞吐率限制 bps | |
–-device-read-iops | list | 挂载设备读速率 单位为每秒io次数 | |
–-device-write-bps | list | 挂载设备的写吞吐率限制 bps | |
-–device-write-iops | lsit | 挂载设备写速率 单位为每秒io次数 | |
–-kernel-memory | string | 限制容器内存使用大小 | |
-m | –-memory | bytes | 限制容器内应用内存使用大小 |
–-memory-reservation | bytes | 内存过低时,容器被限制内存的指定值 | |
–-memory-swap | bytes | 限制容器使用内存和交换空间的总大小 | |
-–memory-swappiness | int | 调整容器的内存交换区参数 | |
–-oom-kill-disable | 内存耗尽时时是否kill容器 | ||
-–oom-score-adj | int | Tune host’s OOM preferences (-1000 to 1000) | |
-–pids-limit | int | 限制容器pid个数 | |
–-privileged | 是否给容器高权限,容器内应用将不受权限限制 | ||
-–read-only | 是否让容器内文件系统只读 | ||
–-security-opt | list | 指定一些安全参数,包括权限,安全能力,apparmor等 | |
-–shm-size="" | bytes | /dev/shm的大小 | |
--stop-signal | string | 指定停止容器的系统信号 | |
--stop-timeout | int | Timeout (in seconds) to stop a container | |
--storage-opt | list | Storage driver options for the container | |
–-ulimit | ulimit | 通过ulimit来限制最大文件数,最大进程数 | |
-u | –-user | string | 指定容器内执行命令的用户信息 |
0.4. 其他参数
选项 | 类型 | 说明 | |
---|---|---|---|
-l | --label | list | 以键值对方式指定容器的标签信息 |
--label-file | list | 从文件中读取标签信息 | |
--disable-content-trust | Skip image verification (default true) | ||
--domainname | string | Container NIS domain name | |
--gpus gpu-request | GPU devices to add to the container (‘all’ to pass all GPUs) | ||
--health-cmd | string | Command to run to check health | |
--health-interval | duration | Time between running the check (ms | |
--health-retries | int | Consecutive failures needed to report unhealthy | |
--health-start-period | duration | Start period for the container to initialize before starting | |
--health-timeout | duration | Maximum time to allow one check to run (ms | |
--help | Print usage | ||
--init | Run an init inside the container that forwards signals and reaps processes | ||
--link-local-ip | list | Container IPv4/IPv6 link-local addresses | |
--mount | mount | Attach a filesystem mount to the container | |
--no-healthcheck | Disable any container-specified HEALTHCHEC | ||
--runtime | string | Runtime to use for this container | |
--sysctl | map | Sysctl options (default map[]) |
1. 新建容器 create
docker create [OPTIONS] IMAGE [COMMAND] [ARG...]
Options 查看0.容器配置参数
2. 启动容器 start
docker start [OPTIONS] CONTAINER [CONTAINER...]
选项 | 类型 | 说明 | |
---|---|---|---|
-a | --attach | Attach STDOUT/STDERR and forward signals | |
--detach-keys | string | Override the key sequence for detaching a container | |
-i | --interactive | Attach container’s STDIN |
3. 新建并启动容器 run
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
4. 查看容器 ps
docker ps [OPTIONS]
选项 | 类型 | 说明 | |
---|---|---|---|
-a | --all | Show all containers (default shows just running) | |
-f | --filter | filter | Filter output based on conditions provided |
--format | string | Pretty-print containers using a Go template | |
-n | --last | int | Show n last created containers (includes all states) (default -1) |
-l | --latest | Show the latest created container (includes all states) | |
--no-trunc | Don’t truncate output | ||
-q | --quiet | Only display numeric IDs | |
-s | --size | Display total file sizes |
5. 停止容器 stop
docker stop [OPTIONS] CONTAINER [CONTAINER...]
选项 | 类型 | 说明 | |
---|---|---|---|
-t | --time | int | 杀死前等待停止的秒数 默认10秒 |
6. 杀死容器 kill
docker kill [OPTIONS] CONTAINER [CONTAINER...]
选项 | 类型 | 说明 | |
---|---|---|---|
-s | --signal | Signal to send to the container (default “KILL”) |
6. 删除容器 rm
docker rm [OPTIONS] CONTAINER [CONTAINER...]
选项 | 类型 | 说明 | |
---|---|---|---|
-f | --force | Force the removal of a running container (uses SIGKILL) | |
-l | --link | Remove the specified link | |
-v | --volumes | Remove the volumes associated with the container |
7.导入导出容器
7.1. 导出容器 export
docker export [OPTIONS] CONTAINER
选项 | 类型 | 说明 | |
---|---|---|---|
-o | --output | string | Write to a file, instead of STDOUT |
文件为tar格式
7.2. 导入容器 import
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
选项 | 类型 | 说明 | |
---|---|---|---|
-c | --change | list | Apply Dockerfile instruction to the created image |
-m | --message | string | Set commit message for imported image |
7.3. 提交容器 commit
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
选项 | 类型 | 说明 | |
---|---|---|---|
-a | --author | string | Author (e.g., “John Hannibal Smith hannibal@a-team.com”) |
-c | --change | list | Apply Dockerfile instruction to the created image |
-m | --message | string | Commit message |
-p | --pause | Pause container during commit (default true) |
7.4. 载入容器 load
docker load [OPTIONS]
选项 | 类型 | 说明 | |
---|---|---|---|
-i | --input | string | Read from tar archive file, instead of STDIN |
-q | --quiet | Suppress the load output |
8. 进入容器
8.1. exec
docker exec [OPTIONS] Container command