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、测试

相关推荐
weixin_440401694 分钟前
Python数据分析(空值、重复值检测删除与设置)
开发语言·python·数据分析
消失的旧时光-19439 分钟前
C++ 多线程与并发系统取向(五)—— std::atomic:原子操作与状态一致性(类比 Java Atomic)
开发语言·jvm·c++·并发
资深web全栈开发14 分钟前
CoI - 组合优于继承:解耦的艺术
android·java·开发语言
低频电磁之道14 分钟前
C++中预定义宏
开发语言·c++
工程师00720 分钟前
MQTT 概念详解与 C# 实战
开发语言·c#·mqtt通信
biyezuopinvip41 分钟前
基于Spring Boot的投资理财系统设计与实现(任务书)
java·spring boot·vue·毕业设计·论文·任务书·投资理财系统设计与实现
代码改善世界1 小时前
栈和队列的实现与详解(C语言版):从底层原理到代码实战
c语言·开发语言
逆境不可逃1 小时前
【除夕篇】LeetCode 热题 100 之 189.轮转数组
java·数据结构·算法·链表
七夜zippoe1 小时前
告别SQL恐惧症:我用飞算JavaAI的SQL Chat,把数据库变成了“聊天室”
java·数据库·sql·ai·javaai