8
9

More than 5 years have passed since last update.

docker-compose間で通信できるようにする

Posted at

手順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間)ができなくなる
  • サービス名:ポート番号が重複してると起動時にエラーになる
8
9
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
9