我有从浏览器到 Express API 或我的反应服务器的 Nginx 路由请求,但是,在控制台中,我继续收到刚刚挂起的 xhr 请求,然后超时并出现 502 bad gateway 错误,这通常是由于 Nginx 无法将请求传递给“上游”,在这种情况下是我的 Express API,通常我可以检查/var/log/nginx/
文件,但是当所有这些都发生在 Docker 容器中时,我不确定如何做到这一点。
我已经尝试过这种docker logs <container name/id>
命令方法,但我得到了Error: No such container: <container-id>
.
我在运行后从最后一行获取了容器 ID docker-compose up --build
,它说Successfully built <container-id>
我复制了那个 id 并docker logs <container-id>
在我的 iTerm 的第二个面板上运行。
然后我做了一个docker ps
并得到了这个输出:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f37be54a9e60 complexly_api "npm run dev" 43 minutes ago Up 28 minutes complexly_api_1
9b87bc0aa343 complexly_nginx "nginx -g 'daemon of…" About an hour ago Up 28 minutes 0.0.0.0:3050->80/tcp complexly_nginx_1
1e30a05f8e28 complexly_worker "npm run dev" About an hour ago Up 28 minutes complexly_worker_1
65611b5a6b05 complexly_client "npm run start" About an hour ago Up 28 minutes complexly_client_1
9182b26fb402 redis:latest "docker-entrypoint.s…" About an hour ago Up 28 minutes 6379/tcp complexly_redis_1
8ca3596d8a50 postgres:latest "docker-entrypoint.s…" 8 days ago Up 28 minutes 5432/tcp complexly_postgres_1
我相信我需要获取其中一个容器 ID 并docker logs
使用,但我不确定。
问题似乎是我
docker logs
在错误的容器上运行。通过运行,
docker ps
我看到了我运行的不同容器,并复制了标记的容器 id,complexly_nginx
并且能够获取我正在寻找的日志。