docker:部署java Springboot项目

文章目录

    • 1、打 jar 包
    • 1、创建Dockerfile
    • 3、创建镜像
    • 4、启动容器
    • 其他注意事项
      • docker中jdk的版本命名
        • 举例:openjdk:11-ea-17-jre-slim
        • 举例:8u312-jre-nanoserver-1809
      • 通过find找文件

1、打 jar 包

将项目打一个 jar 包,可以使用 IDEA
在这里插入图片描述
在这里插入图片描述

1、创建Dockerfile

在项目根目录创建Dockerfile文件

FROM openjdk:17-jdk-slim
WORKDIR /app
COPY target/zy-spring-boot-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java", "-jar", "app.jar"]

3、创建镜像

# 项目根目录执行
docker build -t zy-spring-boot:1.0.0 .

4、启动容器

docker run -p 9090:9090 zy-spring-boot:1.0.0

执行结果和你 java -jar 的一样

其他注意事项

docker中jdk的版本命名

我们在 Dockerfile 中写的 FROM openjdk:17-jdk-slim 就是从 dockerhub 中搜的,以下是一些命名规则

举例:openjdk:11-ea-17-jre-slim
  • openjdk:表示这是一个 OpenJDK(Open Java Development Kit)的镜像。OpenJDK 是一个开源的 Java 开发工具包。
  • 11:表示 OpenJDK 的版本号。在这个例子中,版本号为 11。
  • ea:表示这是一个“早期访问”(Early Access)版本。EA 版本是为了让用户在正式发布之前尝试新特性和改进的版本。
  • 17:表示这个 EA 版本的具体构建号。每个 EA 版本都有一个唯一的构建号。
  • jre:表示这是一个包含 Java 运行时环境(JRE)的镜像。JRE 包含了运行 Java 应用程序所需的最小环境。
  • slim:表示这是一个较小的基础镜像,以减小镜像的大小。通常,slim 版本使用了较小的操作系统作为基础。
举例:8u312-jre-nanoserver-1809
  • 8u312:表示这是 Java 版本 8 的更新版本,具体为第 312 次更新。这里的 “u” 表示 “update”,表示 Java 的更新版本。
  • jre:表示这是一个包含 Java 运行时环境的镜像。JRE 包含了运行 Java 应用程序所需的最小环境,不包括开发工具。
  • nanoserver:表示这个镜像是基于 Windows Nano Server 构建的。Nano Server 是 Windows Server 2016 中的一种轻量级部署选项,用于运行云原生应用。
  • 1809:表示这个镜像是基于 Windows Server 版本 1809 构建的。这是 Windows Server 2019 的早期版本号。

通过find找文件

我想找到 mysql 的 my.cnf 文件,但是不知道在哪,可以这么找

sudo find /opt -name my.cnf
> mysql --help
Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /opt/homebrew/etc/my.cnf ~/.my.cnf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/258028.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用VBA快速统计词组(单词组合)词频

实例需求:产品清单如A列所示,现在如下统计词组词频。想必各位小伙伴都指定如何使用字典对象实现去重,进而实现单个单词的词频统计。 但是统计词组词频就没有那么简单了,为了便于演示,此处的词组只限于两个单词的组合。…

Excel 表列序号

题目链接 Excel 表列序号 题目描述 注意点 columnTitle 仅由大写英文组成1 < columnTitle.length < 7 解答思路 对于"CAB"&#xff0c;计算其序列号的思路&#xff1a;字母B的贡献值为2&#xff0c;字母A的贡献值为1 * 26&#xff0c;字母C的贡献值为3 * …

HarmonyOS学习 第1节 DevEco Studio配置

俗话说的好&#xff0c;工欲善其事,必先利其器。我们先下载官方的开发工具DevEco Studio. 下载完成后&#xff0c;进行安装。 双击DevEco Studio&#xff0c;点击Next按照指引完成安装 重新启动DevEco&#xff0c;点击 Agree 进入环境配置&#xff0c;安装Node.js和ohpm 点击Ne…

【开源】基于Vue+SpringBoot的教学过程管理系统

项目编号&#xff1a; S 054 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S054&#xff0c;文末获取源码。} 项目编号&#xff1a;S054&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 教师端2.2 学生端2.3 微信小程序端2…

妙手ERP功能更新:TikTok支持打印10×10面单、Ozon支持设置最低售价、超过90天的Shopee订单买家信息不再显示......

为了给卖家朋友带来更好的使用体验&#xff0c;更高效地运营跨境店铺&#xff0c;妙手ERP在上周优化了以下多项功能。 01、产品模块优化 全平台 - 自定义平台SKU时&#xff0c;连接符支持为空或可输入其他符号&#xff08;不支持输入数字、emoji、文字&#xff09; Ozon - 支…

拦截 open调用 (进程白名单,文件白名单)

拦截 open 文章目录 拦截 open第一个需求文件结构进程白名单文件白名单 测试代码第一个版本版本二代码演示 增加一个日志记录代码解释 gcc -shared -fPIC -o libintercept.so intercept.c -ldlLD_PRELOAD./libintercept.so ./processA在Linux中&#xff0c;我们可以使用LD_PREL…

艺术画廊展厅网站制作的效果如何

艺术展厅往往有很多人前往&#xff0c;在主要城市有不少画廊&#xff0c;对经营者来说&#xff0c;不同于销售行业&#xff0c;其更多的是打造品牌吸引用户前来或合作等形式&#xff0c;而由于行业特殊性&#xff0c;需要准属性用户才会前往。 因此在品牌打造及信息承载宣传方…

动手学深度学习笔记

1. 深度学习基础与MLP 1.1 框架&#xff1a; 线性回归&#xff1b; Softmax回归&#xff08;实际上用于分类问题&#xff09;&#xff1b; 感知机与多层感知机&#xff1b; 模型选择&#xff1b; 权重衰退&#xff08;weight decay&#xff09;&#xff1b; 丢弃法&…

Facebook广告报告指标CPC

在Facebook广告中&#xff0c;CPC可以作为一个关键指标来评估广告效果和投资回报。较低的CPC意味着广告主能以更低的价格获得更多的点击量&#xff0c;从而降低广告投放成本。而较高的CPC可能暗示着广告主需要更大的预算才能获得相同数量的点击。本文小编将讲讲Facebook广告报告…

如何做好口译服务,同传和交传哪个服务好

随着中国经济的蓬勃发展和综合实力的不断增强&#xff0c;中国与世界各国的交流也日益频繁。口译作为对外交流的桥梁与纽带&#xff0c;需求量与日俱增&#xff0c;其重要性不言而喻。那么&#xff0c;如何做好口译服务呢&#xff1f;是同传还是交传更好呢&#xff1f; 业内专家…

企业贷款行业如何获客?

贷款行业是指提供贷款服务的行业&#xff0c;包括各种类型的金融机构&#xff0c;如银行、信用社、贷款公司、保险公司等。这些机构通过向个人或企业提供贷款服务&#xff0c;满足其资金需求。 主要分为个人贷款和企业贷款。个人贷款指银行或其他金融机构向符合贷款条件的自然…

redis-学习笔记(hash)

Redis 自身已经是 键值对 结构了 Redis 自身的键值对就是通过 哈希 的方式来组织的 把 key 这一层组织完成后, 到了 value 这一层, 还可以用 哈希类型 来组织 (简单的说就是哈希里面套哈希 [数组里面套数组 -> 二维数组] ) [ field value ] hset key field value [ field va…