Java项目基于Docker打包发布

1.打包应用

也可以用命令打包,这样可以跳过单元测试

复制代码
mvn clean package -DskipTests

2.新建dockerfile

1、将打包好的jar包放进你的文件中

2、创建dockerfile

复制代码
FROM  openjdk:8
#设置工作目录
WORKDIR  /workspace

#COPY  wms-app-0.0.1-SNAPSHOT.jar /workspace/app.jar
ADD  wms-app-0.0.1-SNAPSHOT.jar  app.jar
#配置容器暴漏的端口
EXPOSE 8080
#查看是否已经copy进去
#RUN  ls 
#java App
ENTRYPOINT  ["java","-jar","app.jar"]

3.打包镜像

复制代码
docker build -t wsm-app:v1 .

4.测试运行

--rm 代表退出之后,容器移动删除

复制代码
docker run -it --rm beimao:v1

5.发布到阿里云免费私仓库

链接: 点击注册阿里云私仓

复制代码
$ docker login --username=lewowo123 registry.cn-beijing.aliyuncs.com

$ docker tag [ImageId] registry.cn-beijing.aliyuncs.com/beiyou123/beimao:[镜像版本号]

$ docker push registry.cn-beijing.aliyuncs.com/beiyou123/beimao:[镜像版本号]

拉取镜像
docker pull registry.cn-hangzhou.aliyuncs.com/206/beimao:[镜像版本号]

1、申请个人私有仓库

2、创建命名空间

3、创建镜像仓库


4、推送and拉去镜像

6.运行测试

1、运行

复制代码
docker run -d -p 3999:8080 wsm-app:v1

2、测试

相关推荐
liangsheng_g10 分钟前
微服务本地开发零配置隔离方案
java·微服务·架构
知识分享小能手12 分钟前
概理论与数理统计学习教程,从入门到精通,在数理统计中应用R软件(22)
开发语言·学习·r语言
不服老的小黑哥13 分钟前
六、集合处理(collections.md)
java
乐观勇敢坚强的老彭16 分钟前
C++信奥GESP四级的常见题型和解题模板速查表
开发语言·c++
denggun1234522 分钟前
信号量(DispatchSemaphore vs AsyncSemaphore)、swift协作式线程池 and python信号量
开发语言·python·swift
lisw0525 分钟前
计算与科学哲学(Philosophy of Computing and Science)
java·开发语言·人工智能
凤山老林26 分钟前
Spring Boot 集成 ShardingSphere-Encrypt 实现字段级实时脱敏
java·spring boot·后端·数据脱敏
vipxieliang26 分钟前
ValidX v1.2.0 更新日志
java·后端
叫我Paul就好1 小时前
Spring 为何没有在 Java之外的地方存在?
java·后端·spring
深念Y1 小时前
为什么选 Go:直观、可维护、AI 友好
linux·开发语言·人工智能·golang·agent·harness