当前位置:   article > 正文

docker 将jar包打成docker镜像_docker把jar包打包镜像

docker把jar包打包镜像

构建三步骤:

  • 编写Dockerfile文件
  • docker build 命令构建镜像
  • docker run 根据镜像运行容器实例

docker官网

不废话,直接上案例,这是本人在公司使用的打镜像方式,与上面的构建步骤略有不同。

以下文件都是在同一个目录文件夹下!!!

1、编写Dockerfile文件,通过Dockerfile文件将jar包打成镜像

FROM:

        基础镜像,当前新镜像是基于哪个镜像的,指定一个已经存在的镜像作为模板,第一条必须是FROM

EXPOSE:

        当前容器对外暴露出的端口

ENTRYPOINT:

        用来指定一个容器启动时要运行的命令,类似于 CMD 指令,但是ENTRYPOINT不会被docker run后面的命令覆盖, 而且这些命令行参数会被当作参数送给 ENTRYPOINT 指令指定的程序

  1. #方式一:
  2. FROM openjdk:8
  3. EXPOSE 9099
  4. ENTRYPOINT ["sh","/usr/data/run.sh"]
  5. ---------------------------------------
  6. #方式二:
  7. FROM openjdk:8-jre
  8. #把jar包添加到镜像中
  9. Add app.jar /usr/data/app.jar
  10. #设置时区
  11. RUN cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
  12. EXPOSE 8088
  13. CMD java -jar /usr/data/app.jar

2、编写执行脚本(方式二不用)

很简单,就是执行jar包的命令

vim run.sh

java -jar /usr/data/app.jar

3、通过dockerfile构建镜像

将jar包上传至Dockerfile文件同一目录下,执行docker build

格式:

        docker build -f Dockerfile路径 -t 镜像名称:版本号 .

docker build -f /home/xxx/Dockerfile -t app:1.0.0 .

注意最后有一个 “ . ” !!!

看到Successfully镜像就构建成功了。

4、查看镜像

docker images

5、运行docker镜像

  1. docker run
  2. -it --log-opt max-size=1024m
  3. --log-opt max-file=31 --restart=always
  4. -d --name=app-service
  5. -p 9099:9099
  6. -v /home/xxx:/usr/data #本地Dockerfile所在的文件目录挂载到容器内
  7. -v /etc/localtime:/etc/localtime:ro
  8. -v /var/run/docker.sock:/var/run/docker.sock
  9. -v /usr/bin/docker:/usr/bin/docker
  10. app:1.0.0
  11. -------------------------------------------
  12. docker run -d --restart=always --privileged=true -p 80:80 --name=app app:latest

查看启动的容器

docker ps

 

6、将压缩成tar包镜像下载到本地

  1. # XXX是你刚生成的镜像
  2. docker save XXX:1.0 | gzip > XXX_1.0.tar.gz

  7、将镜像部署到另一个docker容器里

docker load -i XXX_1.0.tar.gz

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/642916
推荐阅读
相关标签
  

闽ICP备14008679号