У меня есть мультимодульный проект Maven (модуль углового интерфейса + модуль бэкенда SpringBoot), находящийся в том же проекте Parent Maven. Я хочу запустить приложение в Docker Multi-Containers (Docker-контейнер для Frontend + Docker-контейнер для Backend + Docker-контейнер для базы данных). Как я могу использовать Docker Compose для запуска мульти-контейнеров Docker?
Я создал «docker-compose.yml» в родительском проекте, и в каждом модуле я добавил «Dockerfile».
Вот структура моего проекта
Файл docker-compose.yml
version: '3'
services:
docker-container-application-mariadb:
image: mariadb:latest
environment:
- MYSQL_ROOT_PASSWORD=*****
- MYSQL_DATABASE=*******
- MYSQL_USER=*******
- MYSQL_PASSWORD=*******
volumes:
- /data/application-mariadb
docker-container-application-backend:
image: docker-image-application-backend
build:
context: ./application-backend
dockerfile: Dockerfile
depends_on:
- docker-container-application-mariadb
ports:
- 8087:8080
volumes:
- /data/application-backend
Backend Dockerfile:
FROM openjdk:8
EXPOSE 8080
ADD target/application_backend.jar application_backend.jar
# Run the jar file
ENTRYPOINT ["java", "-jar", "application_backend.jar"]
ENTRYPOINT ["java", "-jar", "application_backend.jar"]
Когда я бегу:
docker-compose up
вот ошибка, которую я получаю:
Step 4/6 : ADD $PWD/application-backend/target/application_backend.jar application_backend.jar
ERROR: Service 'docker-container-application-backend' failed to build: ADD failed: stat /var/lib/docker/tmp/docker-builder971325573/esysync-backend/target/application_backend.jar: no such file or directory
Ошибка после обновления кода:
Ошибка после обновления кода, предложенного @Milah: