手順1 事前にネットワークをコマンドで作成する
$ docker network create oreore
oreoreに関しては社内で統一してルール化するとよさげ
手順2 docker-compose.ymlにネットワークを設定する
project_a/docker-compose.yml
~省略~
services:
app:
ports:
- 3000:3000
~省略~
networks:
- oreore
- default
db:
ports:
- 5432:5432
~省略~
networks:
oreore:
external: true
project_b/docker-compose.yml
~省略~
services:
app:
ports:
- 1323:1323
~省略~
networks:
- oreore
- default
db:
ports:
- 5431:5431
~省略~
networks:
oreore:
external: true
解説
networks:
oreore:
external: true
の部分については、
- 最初にコマンドで作った
oreoreネットワークを使うように設定
networks:
- oreore
- default
の部分については、サービス(コンテナ)を
-
oreoreネットワークに追加 -
defaultネットワークにも追加
ということをやっています
注意
-
defaultを忘れると同一のdocker-compose.yml内での通信(app:3000-db:5432間)ができなくなる -
サービス名:ポート番号が重複してると起動時にエラーになる