如何在没有systemctl的情况下检查nginx状态?

时间:2018-03-03 07:28:27

标签: unix docker nginx

我在Alpine容器中运行Nginx网络服务器。我似乎无法使用systemctlhttps://github.com/moby/moby/issues/2296)而没有不同的权限,或者我得到Failed to get D-Bus connection: Unknown error -1。有没有其他方法可以实现相同的功能,即检查正在运行的Nginx实例的状态?

2 个答案:

答案 0 :(得分:0)

您可以ps -ef | grep nginxnetstat -a | grep port_num

假设nginx的进程名称是nginx,port_num是服务器运行的端口

答案 1 :(得分:0)

在容器中,nginx通常作为唯一的进程(实际上是master和一些worker)运行,而不是作为任何类型的服务。

正如你在这里看到的那样official nginx alpine Dockerfile nginx甚至不能作为守护进程运行。

如果nginx退出容器将停止运行。只需使用docker ps检查您的容器是否处于运行状态。

通常nginx容器因配置错误而失败。

容器中的nginx将请求和错误日志转发给docker日志收集器。 找到nginx容器无法启动的原因的最佳方法是docker logs <container-name-or-id>