docker - initctl : Unable to connect to Upstart: Failed to connect to socket/com/ubuntu/upstart: Connection refused in docker image

标签 docker centos centos6

我正进入(状态

$ sudo initctl list
initctl: Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused

在具有
$ uname -a
Linux 7276b783e0bf 4.9.125-linuxkit #1 SMP Fri Sep 7 08:20:28 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/redhat-release
CentOS release 6.10 (Final)

有什么想法吗?我以为 CentOS6 默认使用 Upstart。

最佳答案

您应该大致假设 initctl 之类的命令(和 systemctlservice )在 Docker 中不起作用。如果您尝试在正在运行的 Docker 容器中以交互方式启动一些新服务,这通常不是最佳实践:您需要编写一个 Dockerfile,使服务在容器启动时自行启动,通常只需运行服务器作为前台进程。

一个 Docker 容器运行一个进程(及其子进程)。通常这不是一个初始化类型的过程。如果您 docker run --rm -it centos:6并获得一个 GNU bash shell,该 shell 是容器中运行的唯一进程。 Upstart、systemd 和它们启动的各种其他系统守护进程将不存在。 (尝试 ps -e 在你的 shell 中查看。)

如果您的实际问题是“我的 CentOS 6 容器中正在运行哪些 Upstart 管理的服务”,那么答案是“无”。

关于docker - initctl : Unable to connect to Upstart: Failed to connect to socket/com/ubuntu/upstart: Connection refused in docker image,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54068289/

相关文章:

Linux - 在一定时间内重复执行一条命令

docker - Mono.Btls.MonoBtlsException : Ssl error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED

docker - 提交mysql docker镜像未嵌入新数据库

image - 通过多用户对外部Docker注册表进行特定访问

centos - NoSuchMethodError SLF4J CentOS 5.8

centos - 通过 shell 在 CentOS 上启用 exec

windows - 无法通过 SSH 进入 Windows 8 上的 vagrant CentOS box

linux - ${-#*i} 在 shell 脚本中是什么意思?

docker - GCloud:使用 docker 容器和 GPU 创建实例模板