Windows下,基于Gradle用Docker发布自己的程序

方案1:

windows下打包程序,然后,上传到linux下,生成docker镜像,然后执行。

首先:

由于是采用Gradle管理的项目,打包的时候需要执行build任务。执行完成后,再build\libs目录下应该生成项目名-0.0.1-SNAPSHOT.jar文件。如果没有该文件,尝试使用assemble任务。

在cmd下,可以尝试执行java -jar 项目名-0.0.1-SNAPSHOT.jar, 如果打包正常,程序应该能够启动。

曾经遇到的BUG是,生成的文件执行的时候找不到主类(Main.class),原因是执行的任务不对,生成的文件名(项目名-0.0.1-SNAPSHOT-plain.jar)也不对,文件名中多了一个plain。说明只是用户代码,缺少响应的spring boot的内容。

第二:

登录linux,建立一个文件夹,将打包好的jar包上传进来。

编辑Docker文件。

执行docker build命令,生成镜像。

执行docker run,

复制代码
docker run -d -p 9002:8080 app:latest

指定端口。注意,左边的是暴露给外网的端口,右边是内网端口。-d表示后台运行。

相关推荐
AI浩18 小时前
【Labelme数据操作】LabelMe标注批量复制工具 - 完整教程
运维·服务器·前端
sunxunyong19 小时前
doris运维命令
java·运维·数据库
Guheyunyi19 小时前
智慧消防管理系统如何重塑安全未来
大数据·运维·服务器·人工智能·安全
古城小栈19 小时前
Docker 多阶段构建:Go_Java 镜像瘦身运动
java·docker·golang
会飞的小蛮猪20 小时前
K8s-1.29.2二进制安装-第一章
云原生·容器·kubernetes
雾削木1 天前
k230 Pyhton三角形识别
运维·服务器·网络·stm32·智能路由器
大连好光景1 天前
Python打日志
运维·python·运维开发
专家大圣1 天前
摆脱局域网束缚!Neko+cpolar 让跨网共享成日常
服务器·网络·docker·内网穿透·cpolar
二哈喇子!1 天前
openFuyao 容器平台快速入门:Nginx 应用部署全流程实操
运维·nginx·openfuyao
齐鲁大虾1 天前
国产 Linux 系统核心优缺点与适用场景
linux·运维·服务器