docker / nginx 疑问?-灵析社区

兰豆儿

Linux 版本: ubuntu-22.04.4-desktop-amd64.iso 运行在 VMware Dockerfile: ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/4d744d90d779c6ad2714964e50e65c49.png) 因无法访问[http://192.168.110.131:81/](https://link.segmentfault.com/?enc=R%2FtuB4cCulgaLuzyXj3ISw%3D%3D.sHvqHbAAb%2FbWTh%2Bq4P2tkYYV5rx5PC%2FDk%2FnYWSJ8mNQ%3D), 所以我想看看日志,但情况却是 没有输出而且还卡在那里了: ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/01601b39541f85d9e35e818554773e2c.png) 问题1: 我的Dockerfile有问题吗? 问题2: 输出日志的异常可能是什么原因? (cat 命令是正常的别的文件可以输出) 如何修改呢?

阅读量:193

点赞量:0

问AI
问题1: 看了一眼这个docker写得意义不明,看上去第一个 "FROM ubuntu" 好像没什么作用。 问题2: 如果你需要进入nginx这个容器里面,应该执行这个:"docker exec -it sh" 不输出日志,还有一个得看你的配置文件nginx.conf,是把日志写在哪里了,有没有设置buffer。现在这个看不出来具体原因。 *** 我本地测试了一下,发现是这样的: 因为/var/log/nginx/access.log和error这两个文件是链接到了 /dev/stdout,也就是日志文件写到标准输出里了。stdout是一个管道文件描述符,看不到历史的信息。所以用cat看不到内容。 "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/c0ff77628c9a0f16bdb135274eab0e4a.png) "image.png" (https://wmprod.oss-cn-shanghai.aliyuncs.com/c/user/20241002/772d1575fdb99ce53257933dfff76e07.png) 所以你可能得这样看 "tail -f /var/log/nginx/access.log " 或者 "docker logs -f " 或者在配置文件里面改一下日志的输出位置,不要用这个目录。。