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.rhkb.cn/news/214845.html

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

相关文章

xss 漏洞

xss 漏洞 1.1 漏洞简介1.2 漏洞影响范围1.3 漏洞详解1.3.1 漏洞原理、类型、影响、措施1.3.2 实例DVWA 靶场实验反射性 xss存储型xssDOM 型 XSS pikachu靶场实验反射 get 型 xss反射 post 型 xss xss 绕过 1.1 漏洞简介 XSS 的原理 跨站脚本攻击 XSS(Cross Site Scripting)&am…

观海微电子----LVDS接口

LVDS(Low Voltage Differential Signaling,即低电压差分信号) 常见于高清分辨率的屏幕,是TTL接口的升级版,LVDS接口是在TTL的技术上编码而成,使用低压差分信号来进行传输。 这种技术的核心是采用极…

Vue混淆与还原

Vue混淆与还原 引言 Vue是一种流行的JavaScript框架,用于构建用户界面。它简单易用且功能强大,备受开发者喜爱。然而,在传输和存储过程中,我们需要保护Vue代码的安全性。混淆是一种有效的保护措施,可以加密和压缩代码…

【VS Code开发】使用Live Server搭建MENJA小游戏并发布至公网远程访问

文章目录 前言1. 编写MENJA小游戏2. 安装cpolar内网穿透3. 配置MENJA小游戏公网访问地址4. 实现公网访问MENJA小游戏5. 固定MENJA小游戏公网地址 前言 本篇教程,我们将通过VS Code实现远程开发MENJA小游戏,并通过cpolar内网穿透发布到公网,分…

UDP多人群聊

一,创建类 二,类 1,Liao类 import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.net.*; import java.io.IOException; import java.lang.String; public class Liao extends JFrame{ private static fi…

Diffusion Models: A Comprehensive Survey of Methods and Applications

摘要 扩散模型作为一个强大的新的深度生成模型系列出现,在许多应用中具有破纪录的性能,包括图像合成、视频生成和分子设计。在这项调查中,我们对迅速扩大的扩散模型的工作进行了概述,将研究分为三个关键领域:有效采样…

基于SSM的教师上课系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:Vue 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目:是 目录…

2024年跨年倒计时代码祝福!

首先&#xff0c;本代码借鉴了陈橘又青这位博主的代码参考 如有冒犯&#xff0c;请联系我删除 <!doctype html><html><head><meta charset"utf-8"><title>新年快乐</title><style>body{overflow: hidden;margin: 0;}h1{…

C# UDP

UDP是一个无连接协议&#xff0c;传输数据之前源端和终端不建立连接&#xff0c;当它想传送时就简单地去抓取来自应用程序的数据&#xff0c;并尽可能快地把它扔到网络上。在发送端&#xff0c;UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制…

【数据安全】金融行业数据安全保障措施汇总

数字化的今天&#xff0c;数据的价值不可估量&#xff0c;尤其是金融行业&#xff0c;数据不仅代表着企业的核心资产&#xff0c;还涉及到客户的隐私和信任。因此对于金融行业而言&#xff0c;保障数据安全至关重要。下面我们就来一起讨论为什么金融行业要保障数据安全&#xf…

Android渲染-AHardwareBuffer

本文主要从应用的角度介绍android的native层AHardwareBuffer创建纹理以及保存渲染数据。 HardwareBuffer 要介绍native层的AHardwareBuffer&#xff0c;就需要先从Java层的HardwareBuffer说起。Android官方对于HardwareBuffer介绍如下&#xff1a; HardwareBuffer wraps a na…

Java预科知识

以下内容是根据狂神的Java说、chatgpt和csdn相关博客&#xff0c;结合自己的理解完成的。 Java了解 基于Java 开发了巨多的平台&#xff0c;系统&#xff0c;工具 构建工具&#xff1a; Ant, Maven, Jekins应用服务器&#xff1a;Tomcat, Jetty, Jboss, Websphere, weblogic…

dell r720远程网络安装ubuntu20.04(无U盘)

登陆后界面&#xff0c;在主界面上&#xff0c;我们就可以看到各个硬件组件的状态。在快速启动任务栏中&#xff0c;可以对系统电源进行操作&#xff0c;如开机、关机等。安装操作系统&#xff0c;在虚拟控制台预览处点击>启动 按照浏览器出现的提示确定安装控件等&#x…

软件设计师——数据结构(一)

&#x1f4d1;前言 本文主要是【数据结构】——软件设计师——数据结构的文章&#xff0c;如果有什么需要改进的地方还请大佬指出⛺️ &#x1f3ac;作者简介&#xff1a;大家好&#xff0c;我是听风与他&#x1f947; ☁️博客首页&#xff1a;CSDN主页听风与他 &#x1f304…

running小程序重要技术流程文档

一、项目文件说明&#xff1a; &#xff08;注&#xff1a;getMyMoney无用已删除&#xff09; 二、重要文件介绍 1.reinfo.js&#xff1a;位于utils文件下&#xff0c;该文件封装有统一的请求URL&#xff0c;和请求API同意封装供页面调用&#xff1b;调用时候需要在页面上先…

unittest与pytest的区别

Unittest vs Pytest 主要从用例编写规则、用例的前置和后置、参数化、断言、用例执行、失败重运行和报告这几个方面比较unittest和pytest的区别: 用例编写规则 用例前置与后置条件 断言 测试报告 失败重跑机制 参数化 用例分类执行 如果不好看&#xff0c;可以看下面表格&…

算能 MilkV Duo开发板实战——opencv-mobile (迷你版opencv库)的移植和应用

前言 OpenCV是一种开源的计算机视觉和机器学习软件库&#xff0c;旨在提供一组通用的计算机视觉工具。它用于图像处理、目标识别、人脸识别、机器学习等领域&#xff0c;广泛应用于计算机视觉任务。 OpenCV-Mobile是OpenCV库的轻量版本&#xff0c;专为移动平台&#xff08;A…

[MySQL] SQL优化之性能分析

&#x1f308;键盘敲烂&#xff0c;年薪30万&#x1f308; 目录 一、索引优化 1、索引是什么&#xff1a; 2、索引的数据结构&#xff1a; 3、索引种类&#xff1a; 4、sql分析&#xff08;回表查询&#xff09; 二、定位慢查询语句 1、慢查询日志 2、profile详情 3、…

洛谷P3807 Lucas定理

传送门&#xff1a; P3807 【模板】卢卡斯定理/Lucas 定理 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P3807题干&#xff1a; 给定整数n,m,p 的值&#xff0c;求出C&#xff08;nm&#xff0c;n&#xff09;​mod p 的值。 输入数据保证…

案例027:基于微信小程序的校园二手平台的设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…