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

相关推荐
电商API_180079052471 小时前
京东商品详情API技术文章
大数据·运维·人工智能·网络爬虫
三言老师2 小时前
秘诀-如何远程SSN访问家里的八台电脑(frp 实操方案)
linux·运维·ssh
BTU_YC4 小时前
Docker Compose 部署 DozerDB 完整教程
运维·docker·容器
流烟默4 小时前
Kubernetes 调度器完全指南:从原理到生产实战
云原生·容器·kubernetes
RisunJan6 小时前
Linux命令-scriptreplay(终端会话回放)
linux·运维·chrome
spencer_tseng6 小时前
[kylin & linux] install docker
linux·docker·kylin
x²+(y-√³x²)²=17 小时前
Linux打包文件到Windows,文件/文件类型丢失
linux·运维·windows
世人万千丶7 小时前
去重插入与超限淘汰:ArkTS 实现鸿蒙搜索历史的 LIMIT 艺术
运维·服务器·学习·华为·harmonyos·鸿蒙
未来之窗软件服务8 小时前
企业自动化运营-电子合同预览-东方仙盟
运维·自动化·仙盟创梦ide·东方仙盟
流烟默8 小时前
Kubernetes Service 完全指南:从原理到生产实战
云原生·容器·kubernetes