[docker简明教程] 4_docker 容器启动项设置

本文详细介绍了docker run命令的常用参数,包括如何设置容器开机自启,实现宿主机与容器的文件映射,以及如何在容器中显示图形界面。此外,还讲解了如何调用GPU资源,并提供了网络设置的两种方法:与主机共享网络和自定义网络配置。最后,提到了在宿主机上启用X11显示以支持图形化应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文主要介绍docker run的几个常用参数。

1.开机自启

 --restart=always

宿主机启动后,docker服务会自动启动,只要在docker run的时候加上这个参数: --restart=always
就可以实现容器随着宿主机器启动而自动启动了.

docker里面跑了我们的程序,那么如何让我们的程序在docker容器启动的同时,也跟着一起启动呢?

这里是通过在home目录下写了一个自启动脚本,然后在bashrc中启动该脚本.因为每次启动容器都会自动启动bashrc,所以就会自动运行程序.

2.文件映射

 -r /host/path:/docker/path

其中/host/path为宿主机需要挂载到docker容器内的目录
/docker/path为docker容器内的目录
挂载之后,修改容器内的目录也会修改容器外的目录。修改容器外的目录内容也会影响到容器内部的目录。
需要注意的是,如果在docker内创建文件,文件的权限默认是在root下,如果想要在docker外部进行写入修改删除等操作,可以使用sudo chmod 777 文件 来修改文件权限。

3.图形化显示

 -v /tmp/.X11-unix:/tmp/.X11-unix \           #共享本地unix端口

 -e DISPLAY=unix$DISPLAY \                    #修改环境变量DISPLAY

 -e GDK_SCALE \                               #我觉得这两个是与显示效果相关的环境变量,没有细究

 -e GDK_DPI_SCALE \

3.1 在宿主机安装x11-xserver-utils

开放权限,允许所有用户,当然包括docker,访问X11 的显示接口

sudo apt-get install x11-xserver-utils

xhost +

需要注意的是!!!xhost +这个命令,需要宿主机每一次启动的时候都要输入的.所以可以把这个命令加入到宿主机器的开机自启中.

出现access control disabled, clients can connect from any host说明操作成功.

3.2 在启动docker容器时,添加选项如下:

 -v /tmp/.X11-unix:/tmp/.X11-unix \           #共享本地unix端口

 -e DISPLAY=unix$DISPLAY \                    #修改环境变量DISPLAY

 -e GDK_SCALE \                               #我觉得这两个是与显示效果相关的环境变量,没有细究

 -e GDK_DPI_SCALE \

4.gpu调用

–gpus all

需要首先完成 安装 nvidia-container-runtime

5.网络设置

5.1 和主机共享网络

具体设置看这个:https://blog.youkuaiyun.com/xiaoyou625/article/details/111876039

这里直接给出和主机共享网络的配置:

--network host 

5.2 向/etc/hosts中添加网络配置

--add-host docker_host:172.17.0.2 --add-host master_host:172.17.0.1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值