docker中怎么打包部署jar包
docker中怎么打包部署jar包,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
1.vim 新建Dockerfile文件
FROM java:8MAINTAINER lyjADD thedatamanager-authserver-0.0.1-SNAPSHOT.jar /authserver.jarENTRYPOINT ["sh","-c","java -jar /authserver.jar"]
2.上传jar包
3.打包命令 docker build -t authlyj .
4.查看打包是否成功
[root@ambari-01 lyjJars]# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZEauthserver-lyj2 latest 4f5c9cf1c6fb 4 hours ago 683MB
5.启动
docker run -d -p 8889:7104 --name lyjtest authlyj
docker run
命令包含docker create
和 docker start
两个命令,后续对容器的启动和停止使用
docker start lyjtest 和 docker stop lyjtest
start
不能够再指定容器启动时运行的指令,因为docker只能有一个前台进程。
6.查看日志以及启动情况
docker ps -a //查看启动的容器
docker logs -f -t --tail 10 lyjtest // 查看启动日志
docker stop lyjtest //停止docker 容器
docker rm id/name //删除容器
docker rmi imageID //删除镜像
这个表示docker容器在停止或服务器开机之后会自动重新启动 --restart=always
7.关于docker attach命令 可以查看实时输出的信息
官方文档中说attach后可以通过CTRL-C来detach,但实际上经过我的测试,如果container当前在运行bash,CTRL-C自然是当前行的输入,没有退出;如果container当前正在前台运行进程,如输出nginx的access.log日志,CTRL-C不仅会导致退出容器,而且还stop了。这不是我们想要的,detach的意思按理应该是脱离容器终端,但容器依然运行。好在attach是可以带上--sig-proxy=false来确保CTRL-D或CTRL-C不会关闭容器
[root@ambari-01 docker]# docker attach --sig-proxy=false lyjtest2021-01-05 15:07:19.007 INFO 7 --- [nio-7104-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring DispatcherServlet 'dispatcherServlet'2021-01-05 15:07:19.008 INFO 7 --- [nio-7104-exec-2] o.s.web.servlet.DispatcherServlet : Initializing Servlet 'dispatcherServlet'2021-01-05 15:07:19.026 INFO 7 --- [nio-7104-exec-2] o.s.web.servlet.DispatcherServlet : Completed initialization in 18 ms
8.docker 打包导入到另一台服务器
docker save -o lyjtest.tar REPOSITORY //打包
docker load < lyjtest.tar //解包
docker images //查看是否导入成功
关于docker中怎么打包部署jar包问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。