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

相关推荐
CDN360几秒前
中小站安全方案|360高防服务器+CDN搭配使用,防护效果翻倍
运维·服务器·安全
草莓熊Lotso6 分钟前
Linux 进程间通信之命名管道(FIFO):跨进程通信的实用方案
android·java·linux·运维·服务器·数据库·c++
草莓熊Lotso8 分钟前
MySQL 表约束核心指南:从基础约束到外键关联(含实战案例)
android·运维·服务器·数据库·c++·人工智能·mysql
chenzhuyu9 分钟前
海康NAS R1新版下载引擎
运维·服务器·nas
淮北49412 分钟前
ubuntu下好用的工具
linux·运维·ubuntu
..过云雨15 分钟前
【负载均衡oj项目】03. compile_server编译运行服务设计
运维·c++·html·负载均衡
kaico201815 分钟前
jenkins的安装—windows环境
运维·jenkins
cg_ssh16 分钟前
MinIO docker 集群
运维·docker·容器
知无不研17 分钟前
Linux主函数的参数含义
linux·运维·服务器·主函数的参数
云深麋鹿20 分钟前
C++ | 容器vector
开发语言·c++·容器