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

相关推荐
缘华工业智维9 分钟前
CNN 在故障诊断中的应用:原理、案例与优势
大数据·运维·cnn
开航母的李大1 小时前
软件系统运维常见问题
运维·服务器·系统架构·运维开发
AI大模型2 小时前
基于 Docker 的 LLaMA-Factory 全流程部署指南
docker·llm·llama
华强笔记3 小时前
Linux内存管理系统性总结
linux·运维·网络
tb_first3 小时前
k8sday11服务发现(2/2)
docker·云原生·容器·kubernetes·k8s
拾心213 小时前
【运维进阶】Ansible 角色管理
运维·ansible
phoenix09814 小时前
ansible部署lnmp-allinone
linux·运维·ansible
发愤图强的羔羊4 小时前
Docker 搭建 SVN 服务器
docker
为了摸鱼而战4 小时前
Dockerfile知识点梳理,你要搞懂的都在这
docker
Clownseven5 小时前
Docker+Nginx+Node.js实战教程:从零搭建高可用的前后端分离项目
nginx·docker·node.js