当前位置: 首页 > news >正文

把Java程序部署到本地Docker

一:clean && install程序

install之后会在target中生成jar包        

二:准备三个文件

(1)其中Dockerfile主要起到配置作用:

# 基础镜像
FROM openjdk:17-jdk-slim
# 作者
MAINTAINER "××××"
# 配置
ENV PARAMS=""
# 时区
ENV TZ=PRC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 添加应用
ADD target/*****.jar /*****.jar
## 在镜像运行为容器后执行的命令
ENTRYPOINT ["sh","-c","java -jar $JAVA_OPTS /*****.jar $PARAMS"]

(2)执行build.sh的命令

docker build -f "F:\work\...\Dockerfile" -t ×××/你想要的名字(想要在Docker中image的名字) .

其中 Dockerfile就是第一步的,这里可以写绝对路径。

请注意:该命令最后一个.不要删除!(Docker 会将这个路径下的所有文件和目录打包发送给 Docker 引擎,只有这个上下文中的文件才能被 Dockerfile 访问。)

这里需要注意的是在Dockerfile中的ADD这一行 target/*****.jar 这个jar包的路径是相对路径!不如你如果写 ADD F:/work/.../*****.jar会被 Docker 解释为 ./F:/work/.../*****.jar,这显然是不存在的路径。

这里如果出现错误jdk什么不能下载:可以试试在docker desktop的设置中->Docker Engine中把
"buildkit":改为false

执行之后就可以在本地的Docker看到你的程序出现了(打马赛克部分)

(3)执行start.sh命令

windows用户把他写成一行 可以在cmd中执行

docker run -p 8080:8080 \
--name ***** \
-d ×××/*****

运行之后 不用在IDEA中启动程序可以使用了服务了。。。

http://www.dtcms.com/a/306776.html

相关文章:

  • Python奇幻之旅:从零开始的编程冒险
  • 编程算法:从理论基石到产业变革的核心驱动力
  • 如何保障项目上线质量?核心策略分析
  • “古法编程”到“vibe coding”的第一步:Zread助力一键生成项目说明书
  • 潇洒郎: Vim使用技巧总结
  • 鸿蒙(HarmonyOS)模拟(Mock)数据技术
  • 【2025/07/30】GitHub 今日热门项目
  • 【git】GitHub 的专用代理地址
  • 磁盘IO优先级控制对美国服务器存储子系统的调优验证
  • 2023 年 NOI 最后一题题解
  • 机器学习项目从零到一:加州房价预测模型(PART 1)
  • electron开发桌面应用入门
  • 一句话指令实现“2D转3D”、“图片提取线稿”
  • 北京-4年功能测试2年空窗-报培训班学测开-第六十四天-准备面试项目(焦虑)-同学开始面试
  • 如何设计一个限流器?
  • 【35】C# WinForm入门到精通 —— label 控件 不能 鼠标调整大小,解决办法
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——8. AI赋能(下):在Qt中部署YOLOv8模型
  • WD8001 专为小功率风扇供电及控制而生,低成本,为小风扇生产厂商寻求创新解决方案
  • day065-ALB负载均衡与云盘扩容
  • conda 安装prokka教程
  • PyCharm功能及安装使用教程
  • JavaWeb 核心:AJAX 深入详解与实战(Java 开发者视角)
  • 8. 网络层
  • 2025最新版Node.js下载安装及环境配置教程【超详图文】
  • 项目里程碑如何设定?策略分析
  • 【vLLM学习笔记】:vLLM 参数说明
  • 三十四、【Linux常用工具】rsync+inotify实时同步演示
  • rsync+sersync实现文件实时同步
  • 防火墙与入侵检测
  • 聊聊如何判断发现的缺陷属于前后端