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

相关推荐
齐潇宇6 分钟前
DevOps介绍与工具链全解析
运维·devops·cicd
Arik~朽木13 分钟前
Ubuntu 安装指南
linux·运维·ubuntu
IMPYLH22 分钟前
Linux 的 yes 命令
linux·运维·服务器·数据库·bash
独钓寒江雨38 分钟前
SRH介绍
运维·网络·srv6
东城绝神40 分钟前
《Linux运维实战:使用脚本模拟服务器CPU内存磁盘使用率》
linux·运维·服务器
AI服务老曹40 分钟前
解耦异构算力与多路协议:基于 Docker 部署与源码交付的企业级 GB28181/RTSP 边缘计算 AI 视频管理平台架构深度解析
人工智能·docker·边缘计算
日取其半万世不竭44 分钟前
Docker Compose 服务备份方案:配置、数据和数据库怎么打包
数据库·docker·容器
生活爱好者!1 小时前
用NAS进行漫画创作!一键部署Open WebUI
java·服务器·开发语言·安全·docker
IT策士1 小时前
Docker 从 0 到 1 再到 Kubernetes 实战:第4篇 编写你的第一个 Dockerfile
docker·容器·kubernetes
liux35281 小时前
云原生入门:什么是K8s?
云原生·容器·kubernetes