我尝试设置一个nginx-proxy容器,通过端口80上的子域而不是特殊端口访问我的其他容器.你可以猜到,我无法让它发挥作用.
我对Docker本身有点新意,发现编写docker-compose.yml文件对我来说更舒服,所以我不必经常编写长docker run ...命令.我认为你如何启动容器没有区别,无论是用docker还是用docker-compose.然而,我注意到的一个区别是启动容器docker并不会创建任何新的网络,但之后docker-compose会有一个xxx_default网络.
我读到不同网络上的容器无法互相访问,这可能是nginx-proxy没有将请求转发给其他容器的原因.但是,我无法找到一种方法来配置我的docker-compose.yml文件以不创建任何新网络,而是加入默认的桥接网络,如同docker run.
我尝试了下面这个,但是它导致了一个错误,说我无法加入这样的系统网络:
networks:
default:
external:
name: bridge
Run Code Online (Sandbox Code Playgroud)
我也尝试过network_mode: bridge,但这似乎没有任何区别.
如何编写docker-compose.yml文件以不创建新网络,或者根本不可能?
奖金问题:我应该知道docker和之间是否存在其他差异docker-compose?