在用docker容器创建的openEuler-20.03-lts操作系统上使用systemctl指令,显示如下信息:

问题描述

在用docker容器创建的openEuler-20.03-lts操作系统上使用systemctl指令,显示如下信息:

    System has not been booted with systemd as init system (PID 1). Can’t operate.
    Failed to connect to bus: Host is down
    在这里插入图片描述

解决方式

这是因为创建容器的时候没有特殊(真正root)权限以及相应初始化程序。

    保存当前容器(如果需要的话)

    docker commit [容器名/ID] [需要构建的镜像名(因为是中间量可以随意)]

    举例:sudo docker commit openeuler temp-image

    以特权身份创建一个容器

    docker run -itd --name [新的容器名] --privileged=true [刚才建立的临时镜像或者新镜像] /sbin/init

    举例:sudo docker run -itd --name openeuler-new --privileged=true temp-image:latest /sbin/init

    其中,–privileged=true表示赋予这个容器特殊权限,参考
    /sbin/init表示初始化系统环境

    运行容器

    docker exec -it [容器名] /bin/bash

    举例:docker exec -it openeuler-new /bin/bash

    其中,/bin/bash是指定运行脚本的解释器

后续使用中,需要先启动容器,然后再执行第3步

    docker start [容器名]

    举例:docker start openeuler-new
————————————————
版权声明:本文为CSDN博主「A91A981E」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/m0_46304383/article/details/121483556
posted @   phpwyl  阅读(236)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示