ste*_*ios 3 docker docker-compose docker-networking
假设我们有两个 Web 服务:alpha 和 beta
1)docker-compose.yml对于阿尔法:
version: '2'
services:
web:
build: .
env_file: local.env
networks:
- default
- beta
networks:
beta:
external:
name: beta_default
Run Code Online (Sandbox Code Playgroud)
2)docker-compose.yml对于测试版:
version: '2'
services:
web:
build: .
env_file: .env
expose:
- "5000"
Run Code Online (Sandbox Code Playgroud)
这样我就可以beta_web_1从alpha_web_1容器交互(例如 ping)容器。我想要的是为beta_web_1容器创建一个别名,以便我可以用一个有效的 URL 来命名它,例如:beta.local.
我想这里面发生docker-compose.yml的alpha或在保持它里面的观点阿尔法的范围的任何方式,这样我就不需要更改实际的系统范围名beta_web_1
这可能吗?
我已经错过了,有一个aliases下的选项networks。这样,如果我们将docker-compose.yml文件更改为:
1) alpha/docker-compose.yml:
version: '2'
services:
web:
build: .
env_file: local.env
networks:
default:
aliases:
- alpha.local
beta:
networks:
beta:
external:
name: beta_default
Run Code Online (Sandbox Code Playgroud)
2) 测试版/docker-compose.yml
version: '2'
services:
web:
build: .
env_file: .env
expose:
- "5000"
networks:
default:
aliases:
- beta.local
alpha:
networks:
alpha:
external:
name: alpha_default
Run Code Online (Sandbox Code Playgroud)
现在我们可以beta.local从 alpha ping容器,alpha.local从 beta ping容器。
| 归档时间: |
|
| 查看次数: |
3642 次 |
| 最近记录: |