Linux云服务器,docker compose文件部署多个jar,docker部署多模块boot项目

前提条件

  • Linux服务器
    在这里插入图片描述

  • 服务器已经安装docker
    在这里插入图片描述

  • docker已经安装jdk镜像
    在这里插入图片描述

  • docker已经安装mysql镜像
    在这里插入图片描述

  • 将要部署的项目的jar包打包好,项目是多模块springboot项目

部署过程

  • 项目是3个模块的Spring boot项目,打出来3个jar,将这些jar包拷贝到云服务器文件夹内,我拷贝到了/usr/src/java/manyjars目录下

  • 配置docker-compose.yml文件,该文件要与jar包放在同一个目录下面
    在这里插入图片描述
    docker-compose.yml配置文件内容

version: "3.4"
services:m_one:image: eclipse/centos_jdk8container_name: m_onevolumes:- /usr/src/java/manyjars/module_one-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/module_one-0.0.1-SNAPSHOT.jarports:- "8021:8021"command: java -jar /usr/local/java/manyjars/module_one-0.0.1-SNAPSHOT.jarm_two:image: eclipse/centos_jdk8container_name: m_twovolumes:- /usr/src/java/manyjars/module_two-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/module_two-0.0.1-SNAPSHOT.jarports:- "8022:8022"command: java -jar /usr/local/java/manyjars/module_two-0.0.1-SNAPSHOT.jarpost_entrance:image: eclipse/centos_jdk8container_name: post_entrancevolumes:- /usr/src/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jarports:- "8023:8023"command: java -jar /usr/local/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jar
  • 启动所有jar,使用指令docker-compose up -d需要到docker-compose.yml文件目录下执行这条指令
    在这里插入图片描述

  • 查看启动的容器docker ps -a
    在这里插入图片描述

  • 使用指令docker-compose down ,也需要到docker-compose.yml文件目录下执行这条指令,停止并删除这些容器,再次查看docker里面的容器时,
    在这里插入图片描述

  • 如果想要更换其中一个包,比如说我想更换module_two-0.0.1-SNAPSHOT.jar包,首先将服务器的原来jar重新命名,或者将新包直接替换旧包,我这里是重新命名。其次将新包复制进来。最后,module_two-0.0.1-SNAPSHOT.jar对应的容器是m_two,使用指令docker stop m_two ,再用docker start m_two ,就可以了
    在这里插入图片描述

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

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

相关文章

Linux/Unix-gcc编译回顾

1、gcc编译为可执行程序四步骤:预处理->编译->汇编->链接 注意:-o 用于修改生产的文件名 2、gcc常用参数 指定头文件:-I 语法: gcc -I 头文件所在文件夹路径 源文件 -o 生成文件名 如果头文件和源文件中同一个文件夹…

华为OD真题-流水线-带答案

题目描述: 一个工厂有m条流水线,来并行完成n个独立的作业,该工厂设置了一个调度系统,在安排作业时,总是优先执行处理时间最短的作业。 现给定流水线个数m,需要完成的作业数n, 每个作业的处理时间分别为t1,t…

阿里云OSS迁移工具ossimport实战心得

前言 由于业务的增长,传统的基于磁盘的文件存储需要迁移到阿里云OSS对象存储中。我们的业务主要是涉及GPS轨迹小文件,大致有1TB,文件数量5千万。在使用阿里云ossimport工具的过程中有些基本概念不明确,导致了一些操作失误&#xf…

性能测试 Linux 环境下模拟延时和丢包实现

在性能测试过程中,我们还需要模拟网络异常的情况下,是否会出现一些异常数据。最常见的就是写库操作,比如说我们下单的场景,如果出现网络异常的时候是否会出现数据对不上这种情况。 如我们JMeter发送成功的请求数量和最终数据库表…

linux之Ubuntu系列(五)用户管理、查看用户信息 终端命令

创建用户 、删除用户、修改其他用户密码的终端命令都需要通过 sudo 执行 创建用户 设置密码 删除用户 sudo useradd -m -g 组名 新建用户名 添加新用户 -m:自动建立用户 家目录 -g:指定用户所在的组。否则会建立一个和用户同名的组 设置新增用户的密码&…

Git源代码管理方案

背景 现阶段的Git源代码管理上有一些漏洞,导致在每次上线发布的时间长、出问题,对整体产品的进度有一定的影响。 作用 新的Git源代码管理方案有以下作用: 多功能并行开发时,测试人员可以根据需求任务分配测试自己的功能&#…

Ceph 分布式存储之应用

一、创建 CephFS 文件系统 MDS 接口 1、服务端操作 1)在管理节点创建 mds 服务 [rootadmin ceph]# cd /etc/ceph [rootadmin ceph]# ceph-deploy mds create node01 node02 node03 [ceph_deploy.conf][DEBUG ] found configuration file at: /root/.cephdeploy.c…

.Net5 mvc项目UseBrowserLink插件功能失效的原因

前期基于.Net Framework创建的Web项目,使用了BrowserLink插件协助前端开发,功能一直都比较稳定,后来项目迁到.Net5 ,发现BrowserLink 已经失去了从浏览器定位到项目源代码的功能,希望在后面的版本还能继续支持此版本&a…

Velocity如何对变量中的引号特殊字符进行转义

简介 Velocity是一个基于Java的模板引擎,与Freemarker类似。相较于Freemarker更轻量,但带来的问题就是功能不如Freemarker强大,所以实际项目中可能会更倾向于用Freemarker,这里不作过多介绍了,本文主要记录一下在使用…

国内流行的数据可视化软件工具

在信息爆炸的时代,越来越多的数据堆积如山。但是,这些密集的数据没有重点且可读性较差。因此,我们需要数据可视化来帮助数据易于理解和接受。相比之下,可视化更直观、更有意义,使用适当的数据可视化工具来可视化数据非…

golang整合kafka

kafka 基本概念 消息队列 1、什么是消息队列 消息(Message)是指在应用之间传送的数据,消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。 消息队列(Message Queue&…

SDN系统方法 | 1. 概述

随着互联网和数据中心流量的爆炸式增长,SDN已经逐步取代静态路由交换设备成为构建网络的主流方式,本系列是免费电子书《Software-Defined Networks: A Systems Approach》的中文版,完整介绍了SDN的概念、原理、架构和实现方式。原文: Softwar…

基于FT232HL的USB2.0转ARINC429板卡

基于FT232HL的USB2.0转ARINC429板卡 1 概述 《USB2.0转ARINC429板卡》采用底板子板,层叠安装的结构;使用同样的底板,变换不同功能的子板实现不同的功能版本。 a) 降低硬件设计复杂度:新板卡设计只需要设计子板,子板的…

MySQL中这14个小玩意,让人眼前一亮!!!

前言 我最近几年用MYSQL数据库挺多的,发现了一些非常有用的小玩意,今天拿出来分享到大家,希望对你会有所帮助。 1.group_concat 在我们平常的工作中,使用group by进行分组的场景,是非常多的。 比如想统计出用户表中…

《动手学深度学习》(pytorch版本)中`d2lzh_pytorch`包问题

《动手学深度学习》(pytorch版本)中d2lzh_pytorch包问题

机器视觉检测系统不稳定因素分析

机器视觉的研究始于20世纪50年代二维图像的模式识别,它起初被设计用来代替人眼从事检测识别的工作,可以大大提高检测的工作效率以及降低人眼疲劳带来的检测结果的不一致性。机器视觉检测发展至今,在许多方面已经发展到可以完成人眼难以完成的工作,如高精度的测量以及对特定…

倍福TwinCAT运动控制学习资料

学习倍福控制器和EtherCAT协议的时候,TwinCAT3是非常有必须要学习的。TwinCAT软件其功能强大,可以写plc程序,可以写图形化界面,可以观察波形等等。初次学习时参考TwinCAT3 入门教程和TwinCAT 3运动控制教程,把TwinCAT …

【深度学习】张量的广播专题

一、说明 张量广播(tensor broadcasting)是一种将低维张量自动转化为高维张量的技术,使得张量之间可以进行基于元素的运算(如加、减、乘等)。在进行张量广播时,会将维度数较少的张量沿着长度为1的轴进行复制…

YOLOv5图像和视频对象生成边界框的目标检测实践(GPU版本PyTorch错误处理)

识别图像和视频里面的对象,在计算机视觉中是一个很重要的应用,比如无人驾驶,这个就需要实时的检测到周边环境的各种对象,并及时做出处理。目标检测在以往的文章中有重点讲解过几种,其中Faster R-CNN的源码解读&#xf…