所以我在Docker容器中运行了一个Nginx,我在localhost上运行了一个mysql,我想从我的Nginx中连接到MySql.MySql在localhost上运行,而不是将端口暴露给外部世界,所以它绑定在localhost上,而不是绑定在机器的ip地址上.
有没有办法从这个docker容器中连接到这个MySql或localhost上的任何其他程序?
我想连接两个Docker容器,它们在Docker-Compose文件中相互定义(app和db).其中一个(app)也应该连接到host网络.
容器应连接到公共用户定义的网络(appnet或default),以使用来自docker网络的嵌入式DNS功能.
app 还需要直接连接到主机网络以接收泊坞主机的物理网络中的以太网广播(网络层2).
如果我同时使用这两个指令network_mode: host并networks在一起撰写,我会收到以下错误.
ERROR: 'network_mode' and 'networks' cannot be combined
所以我只能这样做networks!?
version: "3.3"
services:
app:
build: .
image: app
container_name: app
environment:
- MONGODB_HOST=db
depends_on:
- db
networks:
- appnet
- hostnet
db:
image: mongo:latest
container_name: db
networks:
- appnet
networks:
appnet:
hostnet:
external:
name: host
Run Code Online (Sandbox Code Playgroud)
上述撰写文件会产生错误.
ERROR: for app network-scoped alias is supported only for containers …