docker run常用参数

2023-03-26 16:03:42 浏览数 (1)

Docker是一种流行的容器化技术,能够快速、轻松地构建、部署和管理应用程序。Docker run命令是Docker中最常用的命令之一,它允许用户在Docker容器中运行应用程序。在这篇文章中,我们将介绍Docker run常用参数的含义和用法。

1. -d, --detach

这个参数告诉Docker在后台运行容器,使得容器不会占用当前终端的控制权,而是返回一个容器的ID。例如:

代码语言:javascript复制
arduinoCopy codedocker run -d nginx

这个命令将会在后台运行Nginx容器,并返回容器ID。

2. --name

使用这个参数来指定容器的名称,方便后续对容器进行操作。例如:

代码语言:javascript复制
arduinoCopy codedocker run --name my-nginx nginx

这个命令将会创建一个名为“my-nginx”的Nginx容器。

3. -p, --publish

这个参数用于将容器的端口映射到主机的端口,使得主机可以通过这些端口访问容器中的应用程序。例如:

代码语言:javascript复制
arduinoCopy codedocker run -p 8080:80 nginx

这个命令将会将Nginx容器的80端口映射到主机的8080端口上,这样主机就可以通过访问localhost:8080来访问Nginx容器中的应用程序。

4. -v, --volume

使用这个参数可以将主机的目录或文件夹挂载到容器中,使得容器可以访问主机中的文件。例如:

代码语言:javascript复制
bashCopy codedocker run -v /host/data:/container/data nginx

这个命令将会将主机中的“/host/data”目录挂载到Nginx容器中的“/container/data”目录下。

5. --env

这个参数用于设置环境变量,可以将环境变量传递给应用程序。例如:

代码语言:javascript复制
arduinoCopy codedocker run --env MYSQL_ROOT_PASSWORD=123456 mysql

这个命令将会在启动MySQL容器时设置环境变量MYSQL_ROOT_PASSWORD的值为123456。

6. --restart

使用这个参数可以设置容器在退出后的重启策略。例如:

代码语言:javascript复制
scssCopy codedocker run --restart=always nginx

这个命令将会在Nginx容器退出后自动重启容器。

7. --network

使用这个参数可以指定容器所在的网络。例如:

代码语言:javascript复制
arduinoCopy codedocker run --network=my-network nginx

这个命令将会将Nginx容器加入名为“my-network”的网络中。

8. --rm

使用这个参数可以在容器退出后自动删除容器。例如:

代码语言:javascript复制
arduinoCopy codedocker run --rm nginx

这个命令将会在启动Nginx容器后,在容器退出时自动删除容器。

9. --entrypoint

这个参数可以覆盖容器默认的入口点,指定容器启动后要执行的命令。例如:

代码语言:javascript复制
arduinoCopy codedocker run --entrypoint /bin/bash ubuntu

这个命令将会在启动Ubuntu容器后,使用/bin/bash作为容器的入口点。

10. --cpu-shares

这个参数用于设置容器的CPU使用权重。例如:

代码语言:javascript复制
arduinoCopy codedocker run --cpu-shares 512 nginx

这个命令将会将Nginx容器的CPU使用权重设置为512。

11. --memory

使用这个参数可以设置容器的内存限制。例如:

代码语言:javascript复制
arduinoCopy codedocker run --memory=1g nginx

这个命令将会将Nginx容器的内存限制设置为1GB。

12. --privileged

使用这个参数可以使得容器拥有主机的所有特权。例如:

代码语言:javascript复制
arduinoCopy codedocker run --privileged nginx

这个命令将会在启动Nginx容器时,使得容器拥有主机的所有特权。

13. --ulimit

使用这个参数可以设置容器的资源限制。例如:

代码语言:javascript复制
arduinoCopy codedocker run --ulimit nofile=1024:2048 nginx

这个命令将会将Nginx容器的文件打开数限制设置为1024。

14. --health-cmd

这个参数用于设置容器健康检查的命令。例如:

代码语言:javascript复制
arduinoCopy codedocker run --health-cmd="curl --fail http://localhost:8080/health || exit 1" nginx

这个命令将会在启动Nginx容器时,使用curl命令检查容器的健康状态。

15. --link

使用这个参数可以将容器链接到其他容器中。例如:

代码语言:javascript复制
arduinoCopy codedocker run --link mysql:mysql-container nginx

这个命令将会将Nginx容器链接到名为“mysql”的MySQL容器中。

0 人点赞