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

相关推荐
Yanjun2i4 小时前
Agent学习记录六:Tool 类 + Tool Registry
开发语言·python·学习
Bs_MoneyMagnet4 小时前
基于springboot+vue的医院陪诊服务预约平台的设计与实现 源码+文档
java·vue.js·spring boot·后端·spring
SimonKing4 小时前
一个Docker命令,40万首古诗词API开箱即用
java·后端·程序员
一条泥憨鱼4 小时前
【从0开始学习计算机网络】| TIME_WAIT 为什么是 2MSL,CLOSE_WAIT / TIME_WAIT 堆积怎么排查
服务器·开发语言·网络·计算机网络·网络安全
(Charon)4 小时前
【C++】 定时器入门:从定时任务到 epoll 驱动
开发语言·c++
亮_一个嵌入式新手4 小时前
C语言Day21
c语言·开发语言
sibylyue4 小时前
【云原生系列3】Docker Compose单机多容器编排工具
运维·docker·容器
青春易逝丶4 小时前
SpringDataJPA
java·spring·hibernate
kcuwu.4 小时前
第 1 课 · Hello, World 与一个 Go 程序的诞生
开发语言·后端·golang
php@king4 小时前
golang入门到精通
开发语言·后端·golang