unix - docker无法从DockerFile启动服务

标签 unix build docker sudo boot2docker

在我的dockerFile中,

我试着做

service myapp start;

但是当我启动容器时:
docker run -it myapp_image service myapp status 
>dead but pid file exists

但是,如果我进入conainer并手动启动它,它就可以正常运行
 docker run -it myapp_image /bin/bash
 bash-3.2$ service myapp restart
 bash-3.2$ service myapp status
        > myapp is running.

有什么变通办法可以从DockerFile运行服务?

最佳答案

service myapp start将在后台将您的应用程序作为服务启动。该命令存在后,docker容器将立即停止。这是Docker容器的预期行为。

您要做的是让CMD指令在前台而不是在后台启动您的应用程序。

关于unix - docker无法从DockerFile启动服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26559376/

相关文章:

docker - DockerFile和环境变量

docker - 在 Docker 容器中添加用户,运行 Jenkins 作业时 UID 不匹配

docker - 如何连接到远程主机上运行的 docker 容器

linux - 获取星期一和星期日等一周的任何日期作为 Unix 中的参数

linux - 如何在意外删除后取回主机文件

ant - 如何抑制 ANT 复制消息

file - "otool"和 "file"可以是 't show architecture of the ".a"文件

sorting - 对值进行排序并输出其排序列的索引

macos - 通过进程名称使用 Bash 检查 Mac 进程是否正在运行

android-Build.MANUFACTURER 在 htc 设备上返回什么