标题翻译
Dockerfile vs Docker Compose (Java)
问题
Dockerfile (可运行)
FROM openjdk:8
ADD target/global-hall-of-fame.jar global-hall-of-fame.jar
EXPOSE 8083
ENTRYPOINT ["java", "-jar", "global-hall-of-fame.jar"]
然后...
docker run --name global-hall-of-fame-api -d --link global-hall-of-fame-db:global-hall-of-fame-db -p 8083:8083 global-hall-of-fame-api
Docker Compose (有问题)
version: '3'
services:
global-hall-of-fame-db:
container_name: global-hall-of-fame-db
image: mysql:8.0.18
environment:
MYSQL_DATABASE: global-hall-of-fame-db
MYSQL_ROOT_PASSWORD: admin
MYSQL_ROOT_HOST: '%'
ports:
- "3306:3306"
restart: always
global-hall-of-fame-api:
container_name: global-hall-of-fame-api
depends_on:
- global-hall-of-fame-db
restart: always
build: ../api
working_dir: /global-hall-of-fame-api
volumes:
- ./:/global-hall-of-fame-api
- ~/.m2:/root/.m2
expose:
- "8083"
command: "mvn clean spring-boot:run"
英文翻译
I had the dockerfile and it worked well but I wanted to try with compose.
My issue is that the jar is never found. How can I say to the compose that it must build the jar using mvn clean package
and pick the jar from ../api/target
??
> global-hall-of-fame-api | Error: Unable to access jarfile global-hall-of-fame.jar
>
>
Dockerfile (works)
FROM openjdk:8
ADD target/global-hall-of-fame.jar global-hall-of-fame.jar
EXPOSE 8083
ENTRYPOINT ["java", "-jar", "global-hall-of-fame.jar"]
And then...
docker run --name global-hall-of-fame-api -d --link global-hall-of-fame-db:global-hall-of-fame-db -p 8083:8083 global-hall-of-fame-api
Docker Compose (doesn't work)
version: '3'
services:
global-hall-of-fame-db:
container_name: global-hall-of-fame-db
image: mysql:8.0.18
environment:
MYSQL_DATABASE: global-hall-of-fame-db
MYSQL_ROOT_PASSWORD: admin
MYSQL_ROOT_HOST: '%'
ports:
- "3306:3306"
restart: always
global-hall-of-fame-api:
container_name: global-hall-of-fame-api
depends_on:
- global-hall-of-fame-db
restart: always
build: ../api
working_dir: /global-hall-of-fame-api
volumes:
- ./:/global-hall-of-fame-api
- ~/.m2:/root/.m2
expose:
- "8083"
command: "mvn clean spring-boot:run"
专注分享java语言的经验与见解,让所有开发者获益!
评论