[英]Getting “Exception opening socket” on Mongodb connection from Spring App (docker-compose)
[英]Docker Compose getting exception
我有一个已在docker容器上部署的spring boot应用程序,一切正常,但是我想使用docker compose在docker容器中部署和运行该应用程序。
这是我的DockerFile
FROM java:8
VOLUME /tmp
COPY /target/order-0.0.1-SNAPSHOT.jar order.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/order.jar"]
第1步:-用MVN清洁包创建罐子
步骤2:-docker build -t命令
步骤3:-docker run -it -d -p 8080:8080
一切正常
但是,如果我不执行步骤1并希望将应用程序部署在具有docker-compose的容器中。
尝试执行docker-compose时,我发现未找到异常/target/order-0.0.1-SNAPSHOT.jar
那么如何在docker-compose中执行mvn package命令呢?
他们是否有其他方法可以实现这一目标?
这是我的docker-compose.yml
version: '3'
services:
order:
restart: always
build: ./order
working_dir: /order
volumes:
- /tmp:/logs
expose:
- "8080"
尝试使用这个Dockerfile
FROM maven:alpine AS build
COPY src /home/app/src
COPY pom.xml /home/app
RUN mvn -f /home/app/pom.xml clean package
FROM openjdk:alpine
COPY --from=build /home/app/target/*.jar /usr/local/lib/demo.jar
ENTRYPOINT ["java","-jar","/usr/local/lib/demo.jar"]
如果出现类似无法执行jar文件的错误:“无主清单属性”
替换最后一条命令
ENTRYPOINT ["java","-cp","/usr/local/lib/demo.jar","com.packagename.classnamewithoutextension"]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.