@Narts

Как разрешить доступ только определенным сервисам в docker-compose в network?

привет! есть два проекта, у каждого есть свой отдельный docker-compose.yml:
1
version: '3.8'

services:
  web:
    container_name: app
    build:
      context: ./
    ports:
      - "3001:3001"
    depends_on:
      - db

  db:
    container_name: app-db
    image: mysql
    ports:
      - "3306"

networks:
  default:
    external:
      name: nginx-network

2
version: '3.8'

services:
  web2:
    container_name: test
    build:
      context: ./
    ports:
      - "3002:3002»

networks:
  default:
    external:
      name: nginx-network


эти контейнеры связаны сетью nginx-network с драйвером bridge, то есть они имеют друг к другу доступ. как мне сделать так, чтобы web имел доступ к db; web2 имел доступ к app, но не имел доступа к db?
  • Вопрос задан
  • 55 просмотров
Пригласить эксперта
Ответы на вопрос 1
@q2digger
никого не трогаю, починяю примус
добавить еще одну сеть, развести сервисы по разным сетям.

services:
  proxy:
    build: ./proxy
    networks:
      - frontend
  app:
    build: ./app
    networks:
      - frontend
      - backend
  db:
    image: postgres
    networks:
      - backend

networks:
  frontend:
    # Use a custom driver
    driver: custom-driver-1
  backend:
    # Use a custom driver which takes special options
    driver: custom-driver-2
    driver_opts:
      foo: "1"
      bar: "2"
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы