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

相关推荐
feng_you_ying_li3 分钟前
Linux之线程同步:条件变量和两种生产消费模型
linux·运维·服务器
tianyuanwo8 分钟前
OS运维智能化落地抉择:构建故障诊断AI Skill VS 沉淀领域知识库,谁是核心先手?
运维·人工智能·知识库·skill
liulilittle13 分钟前
用户态 TCP 端口转发:对 CUBIC 友好,对 BBR/KCC 收益不大
运维·网络·tcp/ip·计算机网络·信息与通信·tcp·通信
小哈里14 分钟前
【K8S】OCI标准下的企业级镜像治理:Harbor+Skopeo+Trivy 最佳实践
云原生·容器·kubernetes·harbor·镜像·skopen
花间相见17 分钟前
【Kubernetes02】—— 使用 kubeadm 从零搭建 K8s 集群(实操避坑版)
云原生·容器·kubernetes
人工智能培训18 分钟前
从GPT到开源大模型
人工智能·gpt·深度学习·机器学习·容器·知识图谱
杨了个杨898227 分钟前
HAproxy+Keepalive的简介及安装
运维·服务器
utf8mb4安全女神36 分钟前
【shell函数】【shell脚本】定期自动检查服务器磁盘使用情况并发出告警
运维·服务器
ShineWinsu1 小时前
对于Linux:进程信号的解析—下
linux·运维·服务器·面试·笔试·进程·信号
张小凡vip1 小时前
Kubernetes--secret的简介和使用
云原生·容器·kubernetes