Nginx没有在docker容器中运行

问题描述 投票:0回答:2

My Docker File:-

FROM basecentos6
MAINTAINER [email protected]
RUN yum -y update && yum install -y epel-release && yum install -y nginx && yum install -y git && yum install -y java-1.8.0-openjdk
EXPOSE 80
CMD ["nginx","-g","daemon off;"]

Docker container

sudo docker run -p80:80 -it withnginx6 bash

创建容器后,我正在使用以下命令检查nginx的状态

service nginx status

它说nginx被停止了。

如何使用CMD选项使用docker文件使nginx在容器内运行

docker nginx
2个回答
1
投票

您已经按照CMD命令启动运行容器,否则,您将使用bash命令覆盖init进程。启动后,您可以打开与容器的连接并检查:

$ docker run withnginx6
$ docker exec -it ae0b5b04a3a1 bash # assuming id of the container that's running
  [root@ae0b5b04a3a1 /]# service nginx status
  nginx (pid  1) is running...

0
投票

service nginx status 

您正在检查运行nginx的本地系统。但你通过docker部署了你的nginx,所以你应该通过它来检查它

docker ps -a

其中ps显示所有当前正在运行的容器,-a还显示已停止的容器(由于错误)。您可以使用调试和读取已停止容器的日志

docker logs <container_id>

从之前的ps -a输出中获取container_id的位置

在旁注:有一个官方的nginx容器,你可以使用这个:https://hub.docker.com/_/nginx/

© www.soinside.com 2019 - 2024. All rights reserved.