首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在docker容器中运行后台程序?

如何在docker容器中运行后台程序?
EN

Stack Overflow用户
提问于 2019-02-27 11:06:48
回答 2查看 260关注 0票数 0

我想运行一个容器,但它是一个后台程序(例如: tinyproxy,我生成图像tinyproxy_local)

代码语言:javascript
复制
docker run -d tinyproxy_local tinyproxy

这将退出,因为tinyproxy是一个后台程序。

我可以这样做:

代码语言:javascript
复制
docker run -it tinyproxy_local bash
/#: tinyproxy
/#: ctrl+p ctrl+q

这可以运行,但我希望在重新启动容器时可以自动启动tinyproxy。我测试过:

代码语言:javascript
复制
docker run -d tinyproxy_local tinyproxy && sleep 99999999999

我认为这个容器在睡觉的时候可以继续运行,但它不起作用。

如何在docker容器中运行后台程序,并在重新启动容器时自动启动?

或是否有任何小的program程序,可以保持容器运行?(我试过sleep 99999999,但没有成功)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-02-27 11:13:39

您应该在前台运行您的对接进程。

对于tinyproxy,我相信它是-d标志(源:https://www.mankier.com/8/tinyproxy)。

基于评论的编辑:

如果您的入口点运行两个进程--一个是应用程序,另一个是tinyproxy --您应该将它们分离到两个容器中,并使用-d标志在前台运行tinyproxy。另一个信息来源可以是这个锡代码头。

坚持每个容器的一个过程将在未来省却你的头痛。

票数 3
EN

Stack Overflow用户

发布于 2019-02-27 11:14:45

使用鼻涕

代码语言:javascript
复制
#!/bin/sh
nohup sh -c programname &
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54904060

复制
相关文章

相似问题

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