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表示后台运行。

相关推荐
IpdataCloud几秒前
效果广告中点击IP与转化IP不一致?用IP查询怎么做归因分析?
运维·服务器·网络
SPC的存折30 分钟前
2、Docker命令与镜像、容器管理
linux·运维·服务器·docker·容器·eureka
D4c-lovetrain34 分钟前
Linux个人心得26 (redis主从复制全流程,详细版)
linux·运维·服务器
Bert.Cai1 小时前
Linux whoami命令详解
linux·运维
x***r1511 小时前
驱动精灵离线版使用指南:免联网快速安装驱动(万能网卡版)
linux·运维·服务器
嵌入式×边缘AI:打怪升级日志1 小时前
Linux GPIO子系统与中断驱动开发:从入门到实战(完整版)
linux·运维·驱动开发
kyle~1 小时前
SPOOLing 技术(假脱机技术)独占设备 → 虚拟共享设备
运维·服务器·网络
卡比巴拉—林2 小时前
Linux SSH免密登录配置(双向免密)
linux·运维·ssh
NineData2 小时前
NineData 5.0 产品发布和生态伙伴大会,圆满举办!
运维·数据库·人工智能
薛定猫AI2 小时前
【技术干货】AI Agent 自动化业务流程实战:从零构建智能营销系统
运维·人工智能·自动化