docker run的选项大约有100多个,包括-d
,-i
,-t
,-v
和-w
。在这里将会提出10个最常见的内容,以及了解有关使用它们的更多信息和链接,以下是docker run的介绍示例:
docker run
--rm
--detach
--env KEY = VALUE
--ip 10.10.100.100
--publish 9527:9527
--volume linuxea_volume
--name linuxea_container
--tty --interactive
--volume /linuxea_volume
--workdir / app
IMAGE bash
cli命令
这基于image创建容器,它使用给定的选项提供的配置在容器中执行这些命令和参数
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
ps: 该docker run
命令首先creates
在指定的图像上写入可写容器层,然后starts
使用指定的命令。
可参考linuxea:白话容器之docker存储卷概述(16)以及官方文档
相似的命令
docker run命令类似于docker exec在现有的容器中运行命令,如果要了解这些内容,可以查看:linuxea:docker run与exec的使用差异
选项
docker run
按字母顺序排列的前10个选项。
1) --detach, -d
默认情况下,Docker容器运行附加到本地标准输入,输出和错误流。该-d, --detach
选项在终端会话的后台运行容器,因此不显示其输出。Docker的初学者分离模式中详细介绍了此选项:linuxea:如何在终端的后台运行容器
2) --entrypoint
设置或覆盖image的默认入口点命令。入口点设置在运行容器时将首先执行的命令和参数。在docker run命令末尾传递的任何命令和参数都将附加到入口点。要了解有关使用Entrypoint的更多信息,请查看linuxea:白话容器之dockerfile CMD/entrypoint详解3(20)
3) --env, -e
使用一KEY=VALUE
对设置环境变量。如果文件中包含环境变量,则可以将文件路径传递给该选项--env-file
。
4) --ip
例如,声明IP地址--ip=10.10.100.100
5) --name
为容器指定名称,--name linuxea_container
6) --publish, -p | --publish-all, -P
这些发布在image的Dockerfile中定义的容器和主机之间的端口映射,或者使用expose选项,--expose
。该选项--publish, -p
将容器的端口发布到主机,同时--publish-all , -P
发布所有公开的端口。可以在linuxea:白话容器之docker的4种端口暴露方式(11)中简单了解端口映射关系,您可以在Expose vs publish中了解有关定义端口和暴露端口的更多信息:简单解释Docker端口命令
7) --rm
在容器结束时自动退出容器。另一种方法是手动停止然后删除它,有关如何执行此操作的更多信息,请参阅:如何从命令行删除Docker容器
8) --tty, -t
在容器内分配虚拟终端会话。这通常与选项一起使用--interactive, -i
,即使在分离模式(后台运行)下运行也会使STDIN保持打开状态。最常见的用法之一*-i -t*
是运行一个命令,例如*bash*
,在容器中,你可以在我的帖子中看到更多关于运行bash或Docker容器中的任何命令的信息。
9) --volume, -v
安装卷-v /my_volume
。如果您不熟悉卷,请在Docker的Volumes指南中找到更多信息。
10) --workdir , -w
说明容器内的工作目录。例如,如果将文件复制到app
容器中的文件夹中,则可能需要将工作目录设置为app
。
学习更多
学习如何使用Docker CLI命令,Dockerfile命令,使用这些命令可以帮助你更有效地使用Docker应用程序。查看Docker文档和我的其他帖子以了解更多信息。
- docker目录
- 白话容器