网站无法打开,如何排查问题?

您好,

https://forum.netdivo.com 无法打开,请问如何排查问题?

服务器正在运行,且我已多次重启。

1 个赞

您的 Ping 请求显示“请求超时”。

这可能是由于防火墙阻止了与您的服务器的连接,或者 Discourse 未运行。

请尝试通过 SSH 登录到您的服务器并执行以下命令:

cd /var/discourse
docker ps

该命令将输出结果,用于验证您的 Discourse 容器是否正在运行。

1 个赞

尝试连接到 Docker 守护进程套接字 unix:///var/run/docker.sock 时被拒绝权限:Get http://%2Fvar%2Frun%2Fdocker.sock/v1.39/containers/json:dial unix /var/run/docker.sock:连接:权限被拒绝

请问如何解决这个问题?

您是以 root 身份执行此操作吗?如果不是,请尝试

sudo docker ps

如果仍然报告相同的问题,则您的 Docker 可能未运行。您需要查明 Docker 的安装方式以便重启它。

以 root 身份运行并未抛出错误。

请查看下方截图中的内容

Discourse 未运行,请尝试以下操作:

cd /var/discourse
./launcher start app

这返回了:

正在启动现有容器

  • /usr/bin/docker start app
    守护进程错误响应:在端点 app (9076151599bb0371571888de949fc4c3e747160792902ea5c483536fabaf99cc) 上配置外部连接时驱动程序失败:启动用户代理时出错:监听 tcp 0.0.0.0:80:绑定:地址已被占用
    错误:启动容器失败:app

docker 信息:

/var/discourse# docker info
容器:1
运行中:0
已暂停:0
已停止:1
镜像:9
服务器版本:18.09.2

请运行

netstat -alpn | grep 80

并分享您的输出

附注:您需要更新 Docker

查看输出:

/var/discourse# netstat -alpn | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      911/apache2
         
tcp6       0      0 172.26.13.42:80         213.95.35.221:25030     SYN_RECV    -          
         
tcp6       0      0 172.26.13.42:80         213.95.35.221:27615     SYN_RECV    -          
         
tcp6       0      0 172.26.13.42:80         213.95.35.221:6406      SYN_RECV    -          
         
tcp6       0      0 172.26.13.42:80         213.95.35.221:48296     SYN_RECV    -          
         
unix  2      [ ACC ]     STREAM     LISTENING     19680    816/dockerd          /var/run/do
cker/metrics.sock
unix  3      [ ]         STREAM     CONNECTED     17604    809/systemd-logind   
unix  2      [ ]         DGRAM                    18293    809/systemd-logind   
unix  2      [ ]         DGRAM                    18283    806/rsyslogd         
unix  3      [ ]         STREAM     CONNECTED     18299    809/systemd-logind   
unix  3      [ ]         STREAM     CONNECTED     18099    816/dockerd

您的服务器上正在运行 Apache2,在启动 Discourse Docker 之前需要先停止并卸载它。

请尝试以下操作:

service apache2 stop
apt purge apache* -y
cd /var/discourse
./launcher start app

谢谢,但 purge 命令报出了这个错误:

在命令后附加 sudo,例如:

sudo -i
service apache2 stop
apt purge apache* -y
cd /var/discourse
./launcher start app
5 个赞

哇!成功了。网站已恢复在线!

非常感谢!

3 个赞