首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >systemctl命令在docker-container内不起作用

systemctl命令在docker-container内不起作用
EN

Stack Overflow用户
提问于 2020-03-30 18:49:22
回答 2查看 2.5K关注 0票数 0

我已经为我的spring boot应用程序创建了一个Docker镜像。我无法在Docker容器中运行systemctl命令。这是我执行以下命令时得到的结果

systemctl daemon reload :-

代码语言:javascript
复制
Failed to connect to bus: No such file or directory

构建Docker镜像所遵循的步骤:

1) docker build --rm -t <IMAGE_NAME> .

2) docker-compose up

3) docker exec -it <CONTAINER_NAME> bash

当我使用以下命令启动服务时:

service <SERVICE_NAME> start

我得到了不被认可的服务。如何在docker内部执行服务?

EN

回答 2

Stack Overflow用户

发布于 2020-04-03 02:53:55

如果您想重用现有的systemd服务描述符,那么您需要运行systemd作为入口点,或者您可以使用像docker-systemctl-replacement这样的包装器脚本,它既是服务管理器又是初始化守护进程。

票数 2
EN

Stack Overflow用户

发布于 2020-04-02 13:44:16

正如David评论的那样,在docker环境中通常不会使用像systemctl这样的流程管理器。相反,您可以使应用程序成为映像的主要入口点。有关在https://spring.io/guides/gs/spring-boot-docker/#_containerize_it中将其与docker一起使用的更多信息,请参阅Spring文档。

关键是在您的dockerfile中有类似这样的内容,而不是systemctl daemon reload

代码语言:javascript
复制
ENTRYPOINT ["java","-jar","/app.jar"]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60928901

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档