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

相关推荐
不会就选b4 小时前
Linux之TCP理论<1>
linux·运维·服务器
倔强的石头1065 小时前
应用账号最小权限实践:读写账号、报表账号、运维账号分层
java·运维·开发语言
Android系统攻城狮6 小时前
Linux Gstreamer深度解析之gst_audio_encoder_get_frame_samples_min调用流程与实战(六十)
linux·运维·服务器·音视频·gstreamer音视频·音视频进阶·gstreamer音视频进阶
_upupup7 小时前
Linux中的自动化构建——make/Makefile
linux·运维·自动化
还卿一钵无情泪7 小时前
Docker 部署Unsloth 绕开环境配置难题
运维·人工智能·docker·ai·容器·nlp·干货
打工仔折腾 AI8 小时前
Docker镜像分层与卷挂载到底怎么工作:一次文件系统层面的实测分析
运维·人工智能·后端·python·docker·容器·性能优化
大猫会长9 小时前
调用codebuddy集成的supabase授权白屏解决方法
linux·运维·服务器
夜之眷属10 小时前
服务器被挖矿病毒入侵的排查与清理实录
运维·服务器
极客先躯10 小时前
高级java每日一道面试题-2026年01月20日-实战篇[Docker]-如何实现镜像的跨区域复制?
java·运维·docker·容器·架构图
韩振方10 小时前
为什么服务显示占了 8G,实际内存却没那么多?
运维