Как запустить несколько экземпляров базы данных на одном хосте в Docker? - PullRequest
0 голосов
/ 07 ноября 2019

Например, у нас есть такая конфигурация docker-compose:

version: '3'
services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8069:8069"
    volumes:
      - .:/code
    depends_on:
      - postgres1
      - postgres2
  postgres1:
    image: postgres:11
    environment:
      - POSTGRES_DB=my_postgres1
      - POSTGRES_PASSWORD=password
      - POSTGRES_USER=user
    volumes:
      - postgres1:/var/lib/postgresql/data
  postgres2:
    image: postgres:11
    environment:
      - POSTGRES_DB=my_postgres2
      - POSTGRES_PASSWORD=password
      - POSTGRES_USER=user
    volumes:
      - postgres2:/var/lib/postgresql/data

volumes:
  postgres1:
  postgres2:

Здесь у нас есть два экземпляра базы данных, которые работают на отдельных хостах postgres1 и postgres2. И web служба должна иметь доступ к ним с одного имени хоста.

Нет необходимости обращаться к службам вне докера, например, третья служба должна иметь доступ к этим базам данных с одного хоста. Это ограничение используемой системы, оно не может работать с базами данных с разных хостов.

Эти экземпляры можно присоединить к одному общему хосту, например, получить доступ к базам данных my_postgres1 и my_postgres2 изодин хост?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...