Docker之docker compose!!!!

news2024/9/21 11:07:06

一、概述

是 Docker 官方提供的一款开源工具,主要用于简化在单个主机上定义和运行多容器 Docker 应用的过程。它的核心作用是容器编排,使得开发者能够在一个统一的环境中以声明式的方式管理多容器应用的服务及其依赖关系。

也就是说Docker Compose是一个用于定义和运行多个Docker容器的工具。它使用YAML文件来定义应用程序的服务、网络和卷等配置,然后使用单个命令即可启动、停止和管理整个应用程序的多个容器。

二、使用Docker Compose的简要步骤如下:

1. 创建一个YAML文件(通常命名为 docker-compose.yml ),用于定义应用程序的服务、网络和卷等配置。

2. 在YAML文件中定义服务,包括容器的镜像、端口映射、环境变量、依赖关系等。

3. 运行 docker-compose up 命令,Docker Compose将根据YAML文件中的配置启动和管理容器。

4. 使用 docker-compose down 命令停止和删除由Compose创建的容器。

三、安装

1、下载镜像

yum install docker-compose

2、 创建一个yml文件

 以下是一个简单的Docker Compose示例:

version: '3'
services:
   web:
     image: nginx:latest
     ports:
       - 0:80
     volumes: 
       - /opt/wms-web/:/usr/share/nginx/html/
   db: 
     image: mysql:latest
     ports:
       - 0:3306
     environment: 
       MYSQL_ROOT_PASSWORD: 123456
     volumes: 
       - /opt/db/:/var/lib/mysql/

3、在这个示例中,我们定义了两个服务: web 和 db 。

web 服务使用了 nginx:latest 镜像,并将主机的3888端口映射到容器的80端口。还定义了一个卷,将主机的 ./opt/wms-web 目录映射到容器的 /usr/share/nginx/html 目录。

db 服务使用了 mysql:latest 镜像,并设置了一个环境变量 MYSQL_ROOT_PASSWORD 。还定义了一个卷,将主机的 ./opt/db 目录映射到容器的 /var/lib/mysql 目录。

通过运行 docker-compose up 命令,Docker Compose将启动这两个容器,并根据定义的配置进行设置。这样,我们就可以同时运行和管理这两个容器,它们可以相互通信和交互。

4、启动 (进入你创建yml目录下进行启动)

docker-compose up

守护进程启动
docker-compose up -d   

5、查看

docker ps

 6、访问

7、启动多个  (同样进入yml文件所在目录进行操作)

web为你配置文件中的web
docker-compose scale web=5

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

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

相关文章

利用Jmeter工具对服务器,数据库进行性能监控,压测,导出性能测试报告

Jmeter是Apache基金会旗下的一款免费,开源,轻量级的性能测试工具,主要针对web应用程序客户端/服务器进行性能测试.它可以分别测试静态、动态资源(Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等),它可以通过线程组来模拟数个用户,在一段时间内同时登录服务器,数个用…

MySQL的基础操作与管理

一.MySQL数据库基本操作知识: 1.SQL语句: 关系型数据库,都是使用SQL语句来管理数据库中的数据。 SQL,即结构化查询语言(Structured Query Language) 。 SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控…

【机器学习】基于蝴蝶算法优化的BP神经网络分类预测(BOA-BP)

目录 1.原理与思路2.设计与实现3.结果预测4.代码获取 1.原理与思路 【智能算法应用】智能算法优化BP神经网络思路【智能算法】蝴蝶优化算法(BOA)原理及实现 2.设计与实现 数据集: 数据集样本总数2000 多输入多输出:样本特征24&#xff0c…

WAF是什么意思?waf防火墙部署方式

防火墙中的WAF是什么意思?WAF是Web Application Firewall的简称,即Web应用防火墙(也称网站应用级入侵防御系统)一种专门为Web应用提供保护的网络安全设备,工作在应用层,通过执行一系列针对HTTP/HTTPS的安全…

GraalVM详细安装及打包springboot、java、javafx使用教程(打包普通JAVA项目篇)

前言 在当前多元化开发环境下,Java作为一种广泛应用的编程语言,其应用部署效率与灵活性的重要性日益凸显。Spring Boot框架以其简洁的配置和强大的功能深受开发者喜爱,而JavaFX则为开发者提供了构建丰富桌面客户端应用的能力。然而&#xff…

硬盘、内存、缓存(CPU)和寄存器 空间大小与存取速度的区别及设计原理

一、寄存器和存储器是不同的 很多人会将 寄存器 与 存储器 二者混淆,认为它们是同一个东西。但并不是!! 寄存器是CPU上的一个模块 存储器是 内存硬盘的统称 二、存取速度的比较 CPU(包含寄存器,缓存) > 内存 > 硬盘 内…

Monoxer Programming Contest 2024(AtCoder Beginner Contest 345)(A,B,C,D,E,F)

比赛链接 这场。。。好像已经是一周之前的比赛来着,终于补完了。 C是个披着字符串外衣的数学容斥题。D是个超级超级暴力的爆搜,写起来超级麻烦,感觉。。。真是一次酣畅淋漓的赤石。E是个DP,朴素想法其实比较直观,不过…

C# 右键快捷菜单(上下文菜单)的两种实现方式

在C#中,ContextMenuStrip是一种用于创建右键菜单的控件。它提供了一种方便的方式来为特定的控件或窗体添加自定义的上下文菜单选项。有两种实现方式,如下: 一.通过ContextMenuStrip控件实现 1.从工具箱中拖一个ContextMenuStrip控件到窗体上…

银行量子金融系统应用架构设计

量子金融(即Financial-Quantum,简称Fin-Q),特指量子科技在金融行业中的应用。 目前,量子科技中以量子保密通信、量子随机数和量子计算发展进度较快,取得了诸多阶段性重大技术突破和商用成果,这…

vue学习日记13:记账清单,渲染添加删除

一.需求说明 二、实践 1.基本渲染 &#xff08;1&#xff09;代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" …

JAVA安全(偏基础)

SQL注入 SQLI(SQL Injection)&#xff0c; SQL注入是因为程序未能正确对用户的输入进行检查&#xff0c;将用户的输入以拼接的方式带入SQL语句&#xff0c;导致了SQL注入的产生。攻击者可通过SQL注入直接获取数据库信息&#xff0c;造成信息泄漏。 JDBC JDBC有两个方法获取s…

实时数仓之实时数仓架构(Doris)

目前比较流行的实时数仓架构有两类,其中一类是以Flink+Doris为核心的实时数仓架构方案;另一类是以湖仓一体架构为核心的实时数仓架构方案。本文针对Flink+Doris架构进行介绍,这套架构的特点是组件涉及相对较少,架构简单,实时性更高,且易于Lambda架构实现,Doris本身可以支…

Vue3中基本数据类型为什么需要.value,,,引用类型不需要.value

1、在v3中使用基本数据类型&#xff08;如数字、字符串、布尔值&#xff09;时&#xff0c;如果你希望响应式地更新数据并触发视图更新,需要使用ref包裹基本数据类型,然后将基本数据类型转化为响应式对象;- - - 因此当你使用ref包裹基本数据类型时,实际上得到的是一个包含.valu…

解读 Xend Finance:向 RWA 叙事拓展,构建更具包容性的 DeFi 体系

在二十世纪后&#xff0c;非洲地区陆续爆发了主权运动&#xff0c;这也让非洲大陆逐渐摆脱“殖民地”的标签。目前&#xff0c;非洲大陆公有 54 个主权国家&#xff0c;接近 15 亿且仍在飙升的人口规模&#xff0c;其 GDP 已经与印度相当&#xff0c;且仍旧处于飞速的发展进程中…

计算机服务器中了mkp勒索病毒怎么办,mkp勒索病毒解密工具流程

在网络飞速发展的时代&#xff0c;越来越多的企业离不开网络&#xff0c;利用网络可以为企业更好地开展各项工作业务&#xff0c;帮助企业有效调整发展方向与规划&#xff0c;但网络是一把双刃剑&#xff0c;在为人们提供便利的同时&#xff0c;也为企业的数据安全带来严重威胁…

【Apache ShenYu源码】如何实现负载均衡模块设计

ShenYu是一个异步的&#xff0c;高性能的&#xff0c;跨语言的&#xff0c;响应式的 API 网关。有关ShenYu的介绍可以戳这。 一、前瞻 今天我们尝试不同的代码阅读方式&#xff0c;按模块来去阅读源码&#xff0c;看看效果如何。 本次阅读锁定在shenyu-loadbalancer&#xf…

Qt登录页面

#include "mywidget.h" #include "ui_mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent), ui(new Ui::MyWidget) {ui->setupUi(this);//接收动图QMovie *mv new QMovie(":/pictrue/luori.gif");ui->loglab->setMovie(…

ssm项目(tomcat项目),定时任务(每天运行一次)相同时间多次重复运行job 的bug

目录标题 一、原因 一、原因 debug本地调试没有出现定时任务多次运行的bug&#xff0c;上传到服务器就出现多次运行的bug。&#xff08;war的方式部署到tomcat&#xff09; 一开始我以为是代码原因&#xff0c;或者是linux和win环境不同运行定时任务的方式不一样。 但是自己…

Chronicles 是什么数据库

可以理解的是 Chronicles 是 EPIC 公司根据 IRIS 进行魔改后的一个 DBMS。 简单的来说 Chronicles 就是一个数据库管理系统&#xff0c;但这个数据库管理系统不是我们常说的关系数据库的管理系统。 数据库结构 只要对数据库有所了解的都知道数据库通常就是 2 个部分&#xf…

基于Springboot的银行客户管理系统(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的银行客户管理系统&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结构…