当前位置: 首页 > news >正文

docker jar镜像打包

本文的目的,实现docker打jar包发布镜像到容器中。给出了Dockerfile的例子和发布的脚本。

目录结构

脚本执行自动打包和发布

run.sh

脚本作用:关闭容器,删除容器,删除原始镜像,打包镜像,发布运行服务

echo 'docker stop store-server  '
docker stop store-server

echo 'docker rm  store-server'
docker rm  store-server


echo 'rmi images ...'
docker rmi  wdfimagetest


echo 'start images ...'
docker build -t wdfimagetest .


echo 'run server :docker run --name store-server  -d -p 80:80  wdfimagetest:latest'
docker run --name store-server  -d -p 8080:80  wdfimagetest:latest

linux系统在增加执行权限 chmod +x run.sh

Dockerfile

# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER WDF <123@qq.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# Copy 是复制文件到容器。注意以根目录为默认层级,注意相对路径
COPY store-server-0.2.jar store-server-0.2.jar

# 将jar包添加到容器中并更名为app.jar
ADD store-server-0.2.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
EXPOSE 80
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar", "--server.port=80", "> /log/app.log"]

踩坑:

1. Dockerfile 的f是小写,如果大写会出错

2. 设置端口 (-p 7777:8888)    7777是映射到外部的端口,8888是内部的端口,特别容易反了。已经踩过几次坑

详细的命令请参考:Docker学习笔记——小白版_全部 icmp(ipv4) -1 -1-CSDN博客

相关文章:

  • windows平台的ffmpeg编译使用
  • 国产化信创操作系统的电脑,能运行windows程序吗
  • 大三下找C++开发实习的感受分享
  • tomcat应用的作用以及安装,以及tomcat软件的开机自启动。
  • c语言笔记 堆内存管理
  • 【已解决】linux装了jdk,却无法使用java命令
  • 【RabbitMQ】Spring Boot 结合 RabbitMQ 完成应用间的通信
  • DAY33 贪心算法Ⅱ
  • onlyoffice 8.1.0 社区版去除20连接限制版(添加常用中文字体,解锁手机编辑连接器,包含ARM64)
  • kafka-docker版
  • 2Android中的AIDL是什么以及如何使用它
  • linux 命令基础
  • OpenBMC:BmcWeb 处理认证
  • LangChain 是什么
  • 代码块与设计模式
  • C# AOT生成的hellowwordEXE运行占用多少内存1-5MB?
  • 在线招聘小程序:AI简历筛选与精准职位推荐服务
  • 并发设计_第八章_《C++并发编程实战》笔记
  • CMU15445(2023fall) Project #2 - Extendible Hash Index 匠心分析
  • 区块链与去中心化技术
  • 中国人保一季度业绩“分化”:财险净利增超92%,寿险增收不增利
  • 上汽集团一季度净利润30.2亿元,同比增长11.4%
  • 准80后湖北省财政厅副厅长徐晶华已调任襄阳市副市长
  • 第二艘国产大型邮轮实现坞内起浮,重点强化邮轮供应链本土化建设
  • 国家卫健委:工作相关肌肉骨骼疾病、精神和行为障碍成职业健康新挑战
  • 梅花画与咏梅诗