Dun*_*ill 58 ubuntu ubuntu-server systemd docker systemctl
它似乎systemd在Ubuntu Docker镜像中不活跃或不可用.
我从ubuntu:16.04和ubuntu:16.10图像运行Docker容器.
如果我systemctl status ssh在16,04容器中执行,结果就是错误Failed to connect to bus: No such file or directory.在16.10容器中的误差bash: systemctl: command not found.
如果我which systemctl在16.04容器中找到systemctl 但在16.10容器中找不到.
我发现/lib/systemd存在.
我尝试过安装systemd apt-get install systemd libpam-systemd systemd-ui.然后which systemctl找到systemctl 16.10但systemctl status ssh仍然给出错误Failed to connect to bus: No such file or directory
我的主要问题是:如何激活systemd和systemctl以在Ubuntu Docker镜像中使用?
为什么systemd在Ubuntu Docker容器中不活动?systemd不用于实例化容器吗?
我并没有发现有关此主题的Ubuntu/Ubuntu的泊坞图像,只有从Ubuntu转换信息的任何文件Upstart来systemd.有没有文件给出完整的解释?
BMi*_*tch 57
这是设计的.Docker应该在容器的前台运行一个进程,它将在容器的pid命名空间中作为PID 1生成.Docker专为进程隔离而设计,不适用于操作系统虚拟化,因此没有其他操作系统进程和守护进程在容器内运行(如systemd,cron,syslog等),只有您运行的入口点或命令.
如果它们包含systemd命令,那么你会发现很多东西都没有用,因为你的入口点取代了init.Systemd还可以使用docker限制容器内部的cgroup,因为更改cgroups的能力可以允许进程逃避容器的隔离.如果没有systemd作为init在容器内运行,则没有守护进程来处理你的启动和停止命令.
| 归档时间: |
|
| 查看次数: |
30608 次 |
| 最近记录: |