繁体   English   中英

在docker容器中重新部署spring-boot应用程序?

[英]Redeploy spring-boot application in docker container?

我有一个spring-boot项目,我想在容器中自动重新部署我的jar。 怎么做正确? 到目前为止,我所看到的只是这样。 这是正确的方式?

# cd /home/jdev; 
# sudo docker stop ca_spring_boot;
# sudo docker rm ca_spring_boot;  
# sudo docker rmi ca_app_image; 
# sudo docker build -t ca_app_image .;
# sudo docker run -d -p 8888:8080 --name ca_spring_boot ca_app_image

还有我的Dockerfile

FROM java:8
VOLUME /tmp
EXPOSE 8080
ADD docker-storage/jenkins/workspace/CA/build/libs/ca-1.0.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Dspring.profiles.active=container","-jar","/app.jar"]

谢谢。

你可以装载一个卷并将你的app.jar放在那里。 因此,您无需重建映像,只需重新启动容器即可。

Dockerfile

FROM java:8
ENTRYPOINT [ "sh", "-c", "java -jar /mnt/app.jar" ]

把你的app.jar放在/ docker / spring /

构建并运行:

docker build -t spring_test .
docker run -d -v /docker/spring/:/mnt -p 12384:8080 --name spring_test_running spring_test

如果您更新Spring应用程序,您只需:

docker restart spring_test_running

以前的答案很好。 但是每次要测试代码时都需要重新启动容器。 但我们可以避免这个问题。 只需使用Spring开发工具和安装目标目录,如上所述。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM