Я создал два базовых c стека приложений MEAN с общей базой данных (пн go дБ). Я также создал docker для этих приложений.
Проблема:
Когда я запускаю контейнер среднего стека (пример-приложение-1), используя
docker-compose up -d --build
Контейнер работает гладко, и я Я также могу поразить контейнер и просмотреть мою страницу локально.
Когда я пытаюсь запустить другой контейнер среднего стека (example-app-2), используя
docker-compose up -d --build
, мой предыдущий контейнер остановлен, и текущий контейнер работает без ошибок.
Обязательно:
Я хочу, чтобы оба этих контейнера запускались одновременно с использованием общей базы данных. Мне нужна помощь в достижении этого.
docker -compose.yml Пример приложения -1
version: '3'
services:
example_app_1:
build:
dockerfile: dockerfile
context: ../../
image: example_app_1:1.0.0
backend:
image: 'example_app_1:1.0.0'
working_dir: /app/example_app_1/backend/example-app-1-api
environment:
- DB_URL=mongodb://172.17.0.1:27017/example_app_1
- BACKEND_PORT=8888
- BACKEND_IP=0.0.0.0
restart: always
ports:
- '8888:8888'
command: ['node', 'main.js']
networks:
- default
expose:
- 8888
frontend:
image: 'example_app_1:1.0.0'
working_dir: /app/example_app_1/frontend/example_app_1
ports:
- '5200:5200'
command: ['http-server', '-p', '5200', '-o', '/app/example_app_1/frontend/example-app-1']
restart: always
depends_on:
- backend
networks:
default:
external:
name: backend_network
docker -compose.yml для Пример приложения 2
version: '3'
services:
example-app-2:
build:
dockerfile: dockerfile
context: ../../
image: example_app_2:1.0.0
backend:
image: 'example-app-2:1.0.0'
working_dir: /app/example_app_2/backend/example-app-2-api
environment:
- DB_URL=mongodb://172.17.0.1:27017/example_app_2
- BACKEND_PORT=3333
- BACKEND_IP=0.0.0.0
restart: always
networks:
- default
ports:
- '3333:3333'
command: ['node', 'main.js']
expose:
- 3333
frontend:
image: 'example-app-2:1.0.0'
working_dir: /app/example_app_2/frontend/example-app-2
ports:
- '4200:4200'
command: ['http-server', '-p', '4200', '-o', '/app/example_app_2/frontend/example-app-2
restart: always
depends_on:
- backend
networks:
default:
external:
name: backend_network