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

docker springboot 运维部署详细实例

环境安装

[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker -v
Docker version 26.1.4, build 5650f9b

镜像构建

Dockerfile 文件内容

FROM openjdk:8
# Author Info 创建人信息
MAINTAINER ratelcloud@foxmail.com
ENV PORT=20001
EXPOSE 20001
RUN mkdir /usr/local/ratel-boot-server
WORKDIR /usr/local/ratel-boot-server
# Rename Jar File To Container
COPY ratel-boot-server.jar ./ratel-boot-server.jar
# Run Config
ENTRYPOINT [ "java", "-java", "/ratel-boot-server.jar" ]

自己打包的 jar 包

-rw-r--r-- 1 root root      336 Dec 17 11:50 Dockerfile
-rwxrwxrwx 1 root root 65123176 Dec 13 17:59 ratel-boot-server.jar
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# ls
Dockerfile  ratel-boot-server.jar

根据 Dockerfile 构建镜像

docker build -t ratel-boot-server:v1.0.0 .[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker build -t ratel-boot-server:v1.0.0 .
[+] Building 0.2s (9/9) FINISHED                                                                               docker:default=> [internal] load build definition from Dockerfile                                                                     0.0s=> => transferring dockerfile: 375B                                                                                     0.0s=> [internal] load metadata for docker.io/library/openjdk:8                                                             0.0s=> [internal] load .dockerignore                                                                                        0.0s=> => transferring context: 2B                                                                                          0.0s=> [1/4] FROM docker.io/library/openjdk:8                                                                               0.0s=> [internal] load build context                                                                                        0.0s=> => transferring context: 45B                                                                                         0.0s=> CACHED [2/4] RUN mkdir /usr/local/ratel-boot-server                                                                  0.0s=> CACHED [3/4] WORKDIR /usr/local/ratel-boot-server                                                                    0.0s=> CACHED [4/4] COPY ratel-boot-server.jar ./ratel-boot-server.jar                                                      0.0s=> exporting to image                                                                                                   0.0s=> => exporting layers                                                                                                  0.0s=> => writing image sha256:eebdebddf3f72373b23a1f291609613eb88b237e07dc8d6fbba810decfc3b14d                             0.0s=> => naming to docker.io/library/ratel-boot-server:v1.0.0                                                              0.0s

镜像运行

本地换或者开发环境 构建镜像

rbt1 和 rbt2 容器都起来来

[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker run --name rbt1 -p 20001:20001 --privileged=true --restart=always -idt ratel-boot-server:v1.0.0
6c9ed23572951d9127416802a6f5c484860ca30aa3f7132f22fb1b4b74c55e42
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker run --name rbt2 -p 20002:20001 --privileged=true --restart=always -idt ratel-boot-server:v1.0.0
2a5b430255170b24da51fffc2e9345024de71094abf5d38ba55c3cc753774897
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker ps
CONTAINER ID   IMAGE                           COMMAND                  CREATED          STATUS                                  PORTS                                                           NAMES
2a5b43025517   ratel-boot-server:v1.0.0        "java -java /ratel-b…"   5 seconds ago    Restarting (1) Less than a second ago                                                                   rbt2
6c9ed2357295   ratel-boot-server:v1.0.0        "java -java /ratel-b…"   15 seconds ago   Restarting (1) 1 second ago                                                                             rbt1
71235a26e5c6   ubuntu:18.04                    "/bin/bash"              10 minutes ago   Up 9 minutes                                                                                            verdant_hirquiticke
23d594db7e77   ubuntu:18.04                    "/bin/bash"              55 minutes ago   Up 44 minutes                                                                                           verdant_grommet
ba4ca0dcfcc8   ubuntu:18.04                    "/bin/bash"              7 hours ago      Up 7 hours                                                                                              zealous_quire
22afff419daf   ubuntu:18.04                    "/bin/bash"              8 hours ago      Up 8 hours                                                                                              baleful_obelus
8d6f4a67a2f5   portainer/portainer-ce:latest   "/portainer"             25 hours ago     Up 8 hours                              8000/tcp, 9443/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp   portainer
[root@iZbp1dcnzq7pzpg9607m6pZ ~]#

镜像模板提交

提交镜像模板

[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker commit rbt1 template/ratel-boot-server:v1.0.0
sha256:a0e438bda894e99e79840b867f3677add07162b1e89ca8d7ec6a1fc1efca7674
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED         SIZE
template/ratel-boot-server   v1.0.0    a0e438bda894   6 seconds ago   591MB
ratel-boot-server            v1.0.0    eebdebddf3f7   7 hours ago     591MB
openjdk                      8         e24ac15e052e   2 years ago     526MB
portainer/portainer-ce       latest    0df02179156a   3 years ago     273MB
alpine                       latest    c059bfaa849c   3 years ago     5.58MB
ubuntu                       18.04     5a214d77f5d7   3 years ago     63.1MB
[root@iZbp1dcnzq7pzpg9607m6pZ ~]#

生成测试环境和生产环境镜像

[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker tag ratel-boot-server:v1.0.0 testhabor/testapp:v1.0.0
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker tag ratel-boot-server:v1.0.0 prodhabor/prodapp:v1.0.0

ratel-boot-server v1.0.0 自己构建的

template/ratel-boot-server v1.0.0 提交的模板

testhabor/testapp v1.0.0 测试环境

prodhabor/prodapp v1.0.0 生产环境

[root@iZbp1dcnzq7pzpg9607m6pZ ~]# docker images
REPOSITORY                   TAG       IMAGE ID       CREATED         SIZE
template/ratel-boot-server   v1.0.0    a0e438bda894   4 minutes ago   591MB
ratel-boot-server            v1.0.0    eebdebddf3f7   7 hours ago     591MB
prodhabor/prodapp            v1.0.0    eebdebddf3f7   7 hours ago     591MB
testhabor/testapp            v1.0.0    eebdebddf3f7   7 hours ago     591MB
openjdk                      8         e24ac15e052e   2 years ago     526MB
portainer/portainer-ce       latest    0df02179156a   3 years ago     273MB
alpine                       latest    c059bfaa849c   3 years ago     5.58MB
ubuntu                       18.04     5a214d77f5d7   3 years ago     63.1MB

镜像模板 tag_ 推送测试环境 habor

:::color1
docker login 测试环境 habor

docker push testhaborr/ratel-boot-server:v1.0.0

:::

镜像模板 tag_ 推送生产环境 habor

镜像导出

:::color1
docker save -o ratelserver.tar ratel-boot-server:v1.0.0

:::

ratelserver.tar

REPOSITORY                   TAG       IMAGE ID       CREATED         SIZE
template/ratel-boot-server   v1.0.0    a0e438bda894   9 minutes ago   591MB
ratel-boot-server            v1.0.0    eebdebddf3f7   7 hours ago     591MB
prodhabor/prodapp            v1.0.0    eebdebddf3f7   7 hours ago     591MB
testhabor/testapp            v1.0.0    eebdebddf3f7   7 hours ago     591MB
openjdk                      8         e24ac15e052e   2 years ago     526MB
portainer/portainer-ce       latest    0df02179156a   3 years ago     273MB
alpine                       latest    c059bfaa849c   3 years ago     5.58MB
ubuntu                       18.04     5a214d77f5d7   3 years ago     63.1MB
[root@iZbp1dcnzq7pzpg9607m6pZ ~]# ls
Dockerfile  ratel-boot-server.jar  ratelserver.tar  sa_recovery.log
[root@iZbp1dcnzq7pzpg9607m6pZ ~]#

相关文章:

docker springboot 运维部署详细实例

环境安装 [rootiZbp1dcnzq7pzpg9607m6pZ ~]# docker -v Docker version 26.1.4, build 5650f9b镜像构建 Dockerfile 文件内容 FROM openjdk:8 # Author Info 创建人信息 MAINTAINER ratelcloudfoxmail.com ENV PORT20001 EXPOSE 20001 RUN mkdir /usr/local/ratel-boot-serv…...

Linux 查看目录命令 ls 详细介绍

Linux 和 Unix 系统中 ls 命令是用于列出目录内容。用户可以查看指定目录下的文件和子目录,还可以获取有关这些文件和子目录的详细信息。 基本语法: ls [选项] [目录]如果不指定目录,ls 将列出当前工作目录下的内容。 01、-a 或 --all ls…...

React Native状态管理器Redux、MobX、Context API、useState

Redux、MobX、Context API、useState都是React中用于状态管理的工具,但它们各自有不同的特点和使用场景。 Redux 介绍: Redux是一个JavaScript状态管理库,最初由Dan Abramov和Andrew Clark于2015年开发。它基于Flux架构,强调状态…...

Three.js资源-模型下载网站

在使用 Three.js 进行 3D 开发时,拥有丰富的模型资源库可以大大提升开发效率和作品质量。以下是一些推荐的 Three.js 模型下载网站,它们提供了各种类型的 3D 模型,适合不同项目需求。无论你是需要逼真的建筑模型,还是简单的几何体…...

linux 添加默认网关

在linux 可以使用 route 命令添加默认网关,假设添加的默认网关是192.168.159.2 添加方式如下: route add default gw 192.168.159.2 以上命令只需要把add 改成 del ,就能删除刚才添加的路由 route del default gw 192.168.159.2 #该命…...

【学习笔记】深入浅出详解Pytorch中的View, reshape, unfold,flatten等方法。

文章目录 一、写在前面二、Reshape(一)用法(二)代码展示 三、Unfold(一)torch.unfold 的基本概念(二)torch.unfold 的工作原理(三) 示例代码(四&a…...

CTFHUB-web(SSRF)

内网访问 点击进入环境,输入 http://127.0.0.1/flag.php 伪协议读取文件 /?urlfile:///var/www/html/flag.php 右击查看页面源代码 端口扫描 1.根据题目提示我们知道端口号在8000-9000之间,使用bp抓包并进行爆破 POST请求 点击环境,访问flag.php 查看页…...

分解质因数

给定 n个正整数 ,将每个数分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。 输入格式 第一行包含整数 n 接下来 n行,每行包含一个正整数 。 输出格式 对于每个正整数 ,按照从小到大的顺序输出其分解质因数后&…...

前景物体提取

参考:精选课:C完整的实现双目摄像头图像采集、双目摄像头畸变矫正、前景物体提取、生成视差图、深度图、PCL点云图 前景物体提取是计算机视觉中的一个重要技术,可以用于视频监控、虚拟现实和计算机视觉等领域。 1.前景物体提取的原理 前景…...

Kotlin复习

一、Kotlin类型 1.整数 2.浮点 显示转换: 所有数字类型都支持转换为其他类型,但是转换前会检测长度。 toByte(): Byte toShort(): Short toInt(): Int toLong(): Long toFloat(): Float toDouble(): Double 不同进制的数字表示方法(为了提高…...

【AI日记】24.12.17 kaggle 比赛 2-6 | 把做饭看成一种游戏 | 咖喱牛肉

【AI论文解读】【AI知识点】【AI小项目】【AI战略思考】【AI日记】 工作 参加:kaggle 比赛 Regression with an Insurance Dataset时间:9 小时睡得好很重要 读书 书名:富兰克林自传时间:0.5 小时阅读原因:100 美元纸…...

操作系统(14)请求分页

前言 操作系统中的请求分页,也称为页式虚拟存储管理,是建立在基本分页基础上,为了支持虚拟存储器功能而增加了请求调页功能和页面置换功能的一种内存管理技术。 一、基本概念 分页:将进程的逻辑地址空间分成若干个大小相等的页&am…...

uniapp navigateTo、redirectTo、reLaunch等页面路由跳转方法的区别

uni.switchTab 跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面 // app.json {"tabBar": {"list": [{"pagePath": "index","text": "首页"},{"pagePath": "other","text&…...

模型 A/B测试(科学验证)

系列文章 分享 模型,了解更多👉 模型_思维模型目录。控制变量法。 1 A/B测试的应用 1.1 Electronic Arts(EA)《模拟城市》5游戏网站A/B测试 定义目标: Electronic Arts(EA)在发布新版《模拟城…...

谷歌发布升级版AI视频生成器Veo 2与图像生成器Imagen 3

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...

快速掌握源码部署Filebeat

文章目录 1. 裸金属安装1.1 压缩包方式安装1.2 yum方式安装 2. docker安装3. K8s安装 项目使用了Filebeat,现在需要运行在ARM架构的服务器上,但是Filebeat官方没有提供,需要自己编译一份 filebeat等组件的源码地址 https://github.com/elasti…...

C++ 哈希表封装unordered_map 和 unordered_set

1.源码框架 SGI-STL30版本源代码中没有unordered_map和unordered_set,SGI-STL30版本是C11之前的STL 版本,这两个容器是C11之后才更新的。但是SGI-STL30实现了哈希表,只容器的名字是hash_map 和hash_set,他是作为⾮标准的容器出现…...

pymysql 入门

发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。 1. 什么是 PyMySQL? PyMySQL 是一个纯 Python 编写的 MySQL 客户端库,可以通过它轻松地在 Python 中连…...

Leecode刷题C++之形成目标字符串需要的最少字符串数①

执行结果:通过 执行用时和内存消耗如下&#xff1a; 代码如下&#xff1a; class Solution { public:int minValidStrings(vector<string>& words, string target) {auto prefix_function [](const string& word, const string& target) -> vector<…...

Linux应用开发————mysql数据库

数据库概述 什么是数据库(database)? 数据库是一种数据管理的管理软件&#xff0c;它的作用是为了有效管理数据&#xff0c;形成一个尽可能无几余的数据集合&#xff0c;并能提供接口&#xff0c;方便用户使用。 数据库能用来干什么? 顾名思义&#xff0c;仓库就是用来保存东…...

tao-8k Embedding模型部署教程:支持中文长文本的高兼容性向量服务

tao-8k Embedding模型部署教程&#xff1a;支持中文长文本的高兼容性向量服务 你是不是遇到过这样的问题&#xff1f;想把一段很长的中文文档&#xff0c;比如一篇技术报告、一份产品说明书&#xff0c;甚至是一本小说的章节&#xff0c;转换成计算机能理解的向量&#xff0c;…...

DanKoe 视频笔记:致富之路:三个关键决策

在本节课中&#xff0c;我们将要学习决定个人能否实现财富积累的三个核心决策。这些决策并非关于具体的赚钱技巧&#xff0c;而是关于如何从根本上重塑你的思维方式和行为模式&#xff0c;为创造财富铺平道路。 概述 许多人渴望财富&#xff0c;但往往不得其法。真正的致富之…...

FireRed-OCR Studio企业应用:银行开户资料图像→KYC字段结构化提取

FireRed-OCR Studio企业应用&#xff1a;银行开户资料图像→KYC字段结构化提取 1. 金融文档数字化的挑战与机遇 在银行开户业务中&#xff0c;客户需要提交身份证、营业执照、税务登记证等多种纸质材料。传统人工录入方式存在三个核心痛点&#xff1a; 效率瓶颈&#xff1a;…...

硅橡胶资源平台对接的靠谱对接企业哪家强

在深圳这座创新与制造之都&#xff0c;硅橡胶产业上下游企业林立&#xff0c;从原材料、模具设计到制品生产&#xff0c;形成了一个庞大而复杂的产业链。对于许多企业而言&#xff0c;“深圳硅橡胶资源平台对接” 的需求日益迫切——无论是寻找稳定供应商、开拓新客户&#xff…...

【FMCW雷达】频率调制连续波FMCW雷达系统(从波形生成到利用小胞平均常误报率CA-CFAR进行目标检测)【含Matlab源码 15242期】含报告

&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;&#x1f49e;Matlab武动乾坤博客之家&#x1f49e;…...

工业机器人嵌入式系统建模与自动化工具项目三基于RAPID指令的故障排查与项目实施

目录 一、 项目背景与研发目标 1.1 项目研发背景 1.2 项目核心目标 二、 项目全周期进展 2.1 需求分析与环境搭建阶段&#xff08;完成度100%&#xff09; 2.2 核心模块编码开发阶段&#xff08;完成度100%&#xff09; 2.3 功能调试阶段&#xff08;核心故障爆发…...

1220亿美元!OpenAI创下史上最大融资纪录;DeepSeek连续三天发生服务异常;Claude Code 51万行源码泄露 | 极客头条

「极客头条」—— 技术人员的新闻圈&#xff01;CSDN 的读者朋友们好&#xff0c;「极客头条」来啦&#xff0c;快来看今天都有哪些值得我们技术人关注的重要新闻吧。&#xff08;投稿或寻求报道&#xff1a;zhanghycsdn.net&#xff09;整理 | 苏宓出品 | CSDN&#xff08;ID&…...

intv_ai_mk11生成效果:对‘提高工作效率’需求输出结构清晰、可执行的5条建议

intv_ai_mk11生成效果&#xff1a;对"提高工作效率"需求输出结构清晰、可执行的5条建议 1. 模型介绍与使用场景 intv_ai_mk11是一个基于Llama架构的中等规模文本生成模型&#xff0c;特别适合处理通用问答、文本改写、解释说明等任务。这个模型已经完成本地部署&am…...

告别卡顿!用SwiftFormer在iPhone上5分钟部署实时图像识别App(附完整代码)

在iPhone上5分钟部署SwiftFormer图像识别App的实战指南 从理论到实践&#xff1a;为什么选择SwiftFormer 去年夏天&#xff0c;我在为一个时尚电商客户开发AR试衣功能时&#xff0c;第一次被移动端视觉模型的性能问题难住。当时使用的模型在iPhone 12上每帧处理需要近200ms&…...

猫抓插件:浏览器资源嗅探的革命性解决方案

猫抓插件&#xff1a;浏览器资源嗅探的革命性解决方案 【免费下载链接】cat-catch 猫抓 浏览器资源嗅探扩展 / cat-catch Browser Resource Sniffing Extension 项目地址: https://gitcode.com/GitHub_Trending/ca/cat-catch 你是否曾在浏览网页时&#xff0c;看到心仪的…...