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

Compose简介

- Docker
Compose是一个用来定义和运行复杂应用的Docker工具。一个使用Docker容器的应用,通常由多个容器组成。使用Docker
Compose不再需要使用shell脚本来启动容器。

  • Compose
    通过一个配置文件来管理多个Docker容器,在配置文件中,所有的容器通过services来定义,然后使用docker-compose脚本来启动,停止和重启应用,和应用中的服务以及所有依赖服务的容器,非常适合组合使用多个容器进行开发的场景。
  • Docker Compose 项目是Docker官方的开源项目,使用python语言编写,负责实现对Docker容器集群的快速编排.
    Docker Compose 使用的三个步骤为
  • 使用 Dockerfile 文件定义应用的环境
  • 使用docker-compose.yml 文件定义构成应用程序的服务,这样它们可以在隔离环境中一起运行;
  • 最后执行 docker-compose up 命令来创建并启动所有服务

Compose 安装

(1)下载

官方文档:https://docs.docker.com/compose/install/

  • 您可以在macOS,windows和Linux上运行Compose.本文演示基于Linux环境的安装.我们可以使用curl命令从Github下载它的二进制文件.
 sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

因为Docker-Compose存放在Github,可能不太稳定,我们可以通过执行下面命令,高速安装Compose,该加速通道由DaoCloud提供: http://get.daocloud.io/#install-compose

curl -L https://get.daocloud.io/docker/compose/releases/download/v2.0.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

你可以通过修改URL中的版本,可以自定义您所需的版本文件

(2)授权

chmod +x /usr/local/bin/docker-compose

(3)测试结果

docker-compose --versiondocker-compose version 1.13.0, build 1719ceb

(4)案例

vim docker-compose.yml描述 compose 文件的版本信息
version: "3.2"
services:nginx: #服务名称image: nginx #创建容器时所需的镜像container_name: my1nginx #容器名称,默认为"工程名称-服务条目名称-序号"ports: #宿主机与容器的端口映射关系- "8081:80" # 左边宿主机端口:右边容器端口networks: #配置连接的网络.引用顶级 networks 下的条目- nginx-net
networks:nginx-net: #一个具体网络的条目名称name: nginx-net # 网络名称driver: bridge # 网络模式

执行结果
在这里插入图片描述
(5)docker-compose部署redis集群

这里接上之前docker部署redis集群

https://blog.csdn.net/weixin_51788903/article/details/120992908

for port in `seq 6371 6373`; do mkdir -p ${port}/conf && PORT=${port} envsubst < redis-cluster.tmpl > ${port}/conf/redis.conf && mkdir -p ${port}/data; done

(6)编写docker-compose.yml文件

在当前目录下面/usr/local/docker-redis/redis-cluster

vim docker-compose.ymlversion: "3.2"
services:redis-6374:image: rediscontainer_name: redis-6374restart: alwaysnetwork_mode: "host"volumes:- /usr/local/docker-redis/redis-cluster/6374/conf/redis.conf:/usr/local/etc/redis/redis.conf- /usr/local/docker-redis/redis-cluster/6374/data:/datacommand: redis-server /usr/local/etc/redis/redis.confredis-6375:image: rediscontainer_name: redis-6375restart: alwaysnetwork_mode: "host"volumes:- /usr/local/docker-redis/redis-cluster/6375/conf/redis.conf:/usr/local/etc/redis/redis.conf- /usr/local/docker-redis/redis-cluster/6375/data:/datacommand: redis-server /usr/local/etc/redis/redis.confredis-6376:image: rediscontainer_name: redis-6376restart: alwaysnetwork_mode: "host"volumes:- /usr/local/docker-redis/redis-cluster/6376/conf/redis.conf:/usr/local/etc/redis/redis.conf- /usr/local/docker-redis/redis-cluster/6376/data:/data

后面接上第五点

https://blog.csdn.net/weixin_51788903/article/details/120992908

(7)移除redis集群

作用:直接移除

docker-compose down[+] Running 3/3⠿ Container redis-6376  Removed                                                                                                                                                          2.0s⠿ Container redis-6374  Removed                                                                                                                                                          2.0s⠿ Container redis-6375  Removed    

综上是对docker-compose集群redis的操作

http://www.lryc.cn/news/2420093.html

相关文章:

  • Button简介
  • [摩斯密码表]摩斯密码对照表
  • 关于电容的科普知识
  • 安全防御----APT
  • webGL入门知识讲解
  • 疫情之下,分享几款免费CRM系统,提高在家办公效率!
  • 安装umi及使用umi脚手架创建项目
  • 【CMMI】3、什么是CMMI
  • Java之数组(Array)
  • WHEE美图|AI创作零基础教程-文生图篇
  • 写给 MySQL 开发者的 TDengine 入门指南
  • Android Audio知识梳理 看完这一篇就够了!
  • 【计算机网络子网掩码详解】
  • R语言入门
  • go语言介绍及应用场景分析
  • canal的安装与使用
  • Less —— 一种CSS预处理器,可编程化书写CSS
  • Linux高级---dashboard部署
  • 2024年网络安全最新burpsuite全套使用教程_burpsuite教程,网络安全面试
  • Notepad++ 安装及配置
  • TortoiseGit - git小乌龟可视化管理Gitee和本地代码仓库
  • TortoiseSVN新人使用指南
  • NumPy库的介绍与使用(一)
  • 什么是CAN总线?
  • dubbo学习(一)dubbo简介与原理
  • portal概述
  • Educational Codeforces Round 62 (Rated for Div. 2) - E.Palindrome-less Arrays(dp)
  • hbase的region分区
  • session的详细解释
  • 数据结构——vector 清晰讲解