docker nginx 采坑记录
企业开发
2023-04-08 22:29:28
阅读次数: 0
一、无法访问nginx
- 发现无法访问,先修改配置文件,进入容器
whereis nginx
查看nginx文件位置,如下图
/usr/sbin/nginx
:nginx的执行文件
/etc/nginx
:内含配置文件(nginx.conf以及conf.d内的default.conf伏笔)
/usr/share/nginx
:静态资源html文件夹
/var/log/nginx
:日志文件夹
- 多次修改nginx.conf文件也不生效,后来才发现文件末尾有一句
include /etc/nginx/conf.d/*.conf;
,因此端口需要在conf.d内的default.conf文件修改。
参考:https://blog.csdn.net/u013092227/article/details/107765991
- 在查找解决办法的期间,还了解了docker四种网络类型中的bridge类型。
参考1:https://www.cnblogs.com/wangxu01/articles/11316447.html#top
参考2:https://blog.csdn.net/qq397750142/article/details/105588839
1)可以使用docker inspect 容器id
查看容器信息,在Networks:{}
中可以看到该容器的网络类型为"bridge"
,如图:
其中可以看到为所有容器分配的网关为172.17.0.1
,该容器的ip为172.17.0.3
。
2)查看宿主机与容器的规则
iptables -L -n
,如图:
有两条指向容器的规则:一个是从宿主机(0.0.0.0)访问到容器1(172.17.0.2:3306),另一个是从宿主机(0.0.0.0)访问到容器2(172.17.0.3:8080)
转载自blog.csdn.net/weixin_41474364/article/details/121427352