问题描述
我有如下docker-compose.yaml文件
version: '2'
services:
workQueueService:
restart: always
image: openjdk:11.0.4
ports:
- "11100:11100"
container_name: "haihu-workQueueService"
user: root
privileged: true
volumes:
- /data/docker/InternetHospitals/haihu-workQueueService:/var/haihu
- /data/haihu/resources:/data/haihu/resources
environment:
TZ: "Asia/Shanghai" #时区
working_dir: /var/haihu
command: java -server -Xmx512m -XX:+UseG1GC -jar /data/docker/InternetHospitals/haihu-workQueueService/target/haihu-workQueueService-0.0.1-SNAPSHOT.jar
我执行docker-compose up 时却一直报错:
Error: Unable to access jarfile /data/docker/InternetHospitals/haihu-workQueueService/target/haihu-workQueueService-0.0.1-SNAPSHOT.jar
原因分析:
1.权限不足:
修改为777后依然报错
2.映射路径错误
version: '2'
services:
workQueueService:
restart: always
image: openjdk:11.0.4
ports:
- "11100:11100"
container_name: "haihu-workQueueService"
user: root
privileged: true
volumes:
- /data/docker/InternetHospitals/haihu-workQueueService:/var/haihu
- /data/haihu/resources:/data/haihu/resources
environment:
TZ: "Asia/Shanghai" #时区
working_dir: /var/haihu
command: java -server -Xmx512m -XX:+UseG1GC -jar /data/docker/InternetHospitals/haihu-workQueueService/target/haihu-workQueueService-0.0.1-SNAPSHOT.jar
图中的
- /data/docker/InternetHospitals/haihu-workQueueService:/var/haihu
这一行表示将宿主机中的项目 挂载到容器内的/var/haihu中
所以最后一行jar包的路径应该为 command: java -server -Xmx512m -XX:+UseG1GC -jar /var/haihu/target/haihu-workQueueService-0.0.1-SNAPSHOT.jar
jar包路径改为为容器内 的targetjar包路径