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

相关推荐
2401_840192271 小时前
k8s的StorageClass存储类和pv、pvc、provisioner、物理存储的链路
docker·容器·kubernetes
无情白1 小时前
k8s运维面试总结(持续更新)
运维·面试·kubernetes
H1346948902 小时前
企业服务器备份软件,企业服务器备份的方法有哪些?
运维·服务器·负载均衡
塔能物联运维4 小时前
塔能科技:精准节能,擎动工厂可持续发展巨轮
大数据·运维
小王努力学编程4 小时前
【Linux系统编程】进程概念,进程状态
linux·运维·服务器·c++
小王不会写code5 小时前
Docker安装、配置Redis
redis·docker
liuliu03235 小时前
戴尔笔记本 ubuntu 22.04 开机后进入initramfs界面
linux·运维·ubuntu
RedCong5 小时前
如何在k8s中对接s3存储
云原生·容器·kubernetes
SDL大华6 小时前
【备忘】在Docker中安装宝塔面板,实现环境隔离,又能快速迁移服务器环境
服务器·docker·容器
DADIAN_GONG7 小时前
incomplete command on Huawei switch
linux·运维·华为