目次一、问题1、容器系统中无法使用systemctl下令纵然是开了特权模式([code]--privileged[/code]) 2、无法通过/sbin/init启动容器要想在容器中使用[code]systemctl[/code]下令,除了要指定[code]--privileged[/code]参数外,还必要指定启动参数为[code]/sbin/init[/code],但是大多数系统会有以下问题。 二、原因现在大部分的系统镜像,移除了init软件包,导致镜像中没有[code]/sbin/init[/code]文件,从而导致无法启动。 三、办理方法1、编写dockerfile通过[code]Dockerfile[/code]文件修改镜像,到达使用[code]systemctl[/code]的目的 [code]Dockerfile[/code]文件如下:
两者的区别在于安装的软件包名差别,[code]debian[/code]系的软件包名为[code]init[/code],而[code]redhat[/code]系则是[code]systemd[/code],实际使用时,将源镜像换成所需镜像即可 2、构建镜像[code]docker build -t 新镜像名称:tag名称 .[/code]3、运行构建的镜像[code]docker run -itd --privileged new_ubuntu:latest /sbin/init[/code]4、验证进入对应的容器中,就可以执行相关下令了,即拥有了特权模式 四、留意开启特权模式纵然方便,但是大概存在一定的风险,容器得到特权模式时,将可以大概访问宿主机全部资源,从而导致各种安全问题。 本教程之以是如此,是将docker容器作为虚拟机使用。 总结以上为个人经验,希望能给各人一个参考,也希望各人多多支持脚本之家。 来源:https://www.jb51.net/server/328795w0z.htm 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
|手机版|小黑屋|梦想之都-俊月星空
( 粤ICP备18056059号 )|网站地图
GMT+8, 2025-7-1 19:44 , Processed in 0.029514 second(s), 18 queries .
Powered by Mxzdjyxk! X3.5
© 2001-2025 Discuz! Team.