使用docker-compose管理freeswitch容器

概述
之前的文章我们介绍过如何将freeswitch做成docker镜像,也使用命令行模式正常启动了fs的docker容器。
但是当我们需要同时管理多个docker容器的时候,还是使用docker-compose更简单。
环境
CENTOS 7
docker engine:Version 25.0.3
Docker Compose version v2.24.6
centos docker:7
freeswitch:v1.6.20
docker-compose安装
使用docker-ce的yum源安装。
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum makecache fast
sudo yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
ll /usr/libexec/docker/cli-plugins/docker-compose
sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/bin/docker-compose
sudo ln -s /usr/libexec/docker/cli-plugins/docker-compose /usr/local/bin/docker-compose
docker-compose version
Docker Compose version v2.24.6
docker-compose.yml
docker-compose使用yaml配置文件来管理docker容器,配置好yaml文件之后就可以很方便的使用了。
cat docker-compose.yml
version: '2'
services:
freeswitch:
image: 10.55.55.136:5000/zr/centos.7-fs.1.6.19-release:v1.8.1
container_name: centos.7-fs.1.6.19-1.8.1-as
volumes:
- /usr/local/freeswitch/conf-as:/usr/local/freeswitch/conf
- /usr/local/freeswitch/log:/usr/local/freeswitch/log
- /data/RAS/recordings:/data/RAS/recordings
- /usr/local/freeswitch/sounds:/usr/local/freeswitch/sounds
- /usr/local/freeswitch/webapp:/usr/local/freeswitch/webapp
# command:
restart: unless-stopped
# privileged: true
network_mode: "host"
logging:
driver: "none"
ulimits:
nproc: 65535
nofile:
soft: 20000
hard: 40000
cb:
image: 10.55.55.136:5000/zr/centos.7-cb.1.6.19-release:v1.1.3
container_name: centos.7-cb.1.6.19-1.1.3-compose
volumes:
- /usr/local/CB/CB.cfg:/usr/local/CB/CB.cfg
- /usr/local/CB/logs:/usr/local/CB/logs
- /data/RAS/recordings:/data/RAS/recordings
- /usr/local/freeswitch/sounds:/usr/local/freeswitch/sounds
- /usr/local/freeswitch/webapp:/usr/local/freeswitch/webapp
# command:
restart: unless-stopped
# privileged: true
network_mode: "host"
logging:
driver: "none"
depends_on:
- freeswitch
profiles:
- cb
# sudo docker-compose --profile cb up -d
简单介绍一下配置文件。
启动两个docker容器,freeswitch和cb,cb为可选,使用“cb”profile启动。
测试
使用上面的yml文件启动容器。
$ sudo docker-compose --profile cb up -d
[+] Running 2/2
Container centos.7-fs.1.6.19-1.8.1-as Started 0.0s
Container centos.7-cb.1.6.19-1.1.3-compose Started
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
592f8bdfc962 10.55.55.136:5000/zr/centos.7-cb.1.6.19-release:v1.1.3 "/usr/local/CB/CB-do…" 7 days ago Up 49 seconds centos.7-cb.1.6.19-1.1.3-compose
82fdee3f4717 10.55.55.136:5000/zr/centos.7-fs.1.6.19-release:v1.8.1 "/bin/sh -c '/usr/lo…" 7 days ago Up 50 seconds centos.7-fs.1.6.19-1.8.1-as
总结
docker-compose简化了多个docker容器的管理难度。
对于docker集群的部署,使用docker-compose很方便。
空空如常
求真得真
使用docker-compose管理freeswitch容器的更多相关文章
- Docker学习笔记之使用 Docker Compose 管理容器
0x00 概述 通过之前的介绍,我们已经基本掌握了构建.运行容器的方法,但这还远远不够,由于 Docker 采用轻量级容器的设计,每个容器一般只运行一个软件,而目前绝大多数应用系统都绝不是一个软件所能 ...
- Docker | Compose创建mysql容器
本文通过Docker Compose来创建mysql容器 在linux服务器上创建文件,用于管理容器 mkdir docker-mysql cd docker-mysql vim docker-com ...
- Docker Compose—简化复杂容器应用的利器
Compose是用于定义和运行复杂Docker应用的工具.你可以在一个文件中定义一个多容器的应用,然后使用一条命令来启动你的应用,然后所有相关的操作都会被自动完成. 1. 安装Docker和Compo ...
- docker compose设置不同容器间通信
docker compose新启动了一个容器,这个时候怎么去连接到其他容器呢,去容器里面ping发现不通.一般来说是因为和其他容器没有在一个网络环境里面.首先用命令查看一下当前存在哪些网络环境. 使用 ...
- [Docker6] Docker compose多容器运行与管理
六.Docker compose docker compose就是通过yml文件来定义和运行多个容器docker应用程序的工具,三步过程就能跑起一个compose: 定义应用程序的环境(yml中) 定 ...
- windows 2008 开机启动 Docker Toolbox 并运行容器
新建 docker-startup.bat @echo off REM Set the name of the VM configuration where dockerd will be hoste ...
- Docker Compose 原理
Docker 的优势非常明显,尤其是对于开发者来说,它提供了一种全新的软件发布机制.也就是说使用 docker 镜像作为软件产品的载体,使用 docker 容器提供独立的软件运行上下文环境,使用 do ...
- Docker 三剑客之 Docker Compose
Docker Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排,开源地址:https://github.com/docker/compose Dock ...
- 009.Docker Compose部署及基础使用
一 Docker Compose概述 Compose是一个用于定义和运行多容器Docker应用程序的工具.使用Compose,您可以使用YAML文件来配置应用程序的服务.然后,使用单个命令,您可以从配 ...
- Docker三剑客之Docker Compose
一.什么是Docker Compose Compose 项目是Docker官方的开源项目,负责实现Docker容器集群的快速编排,开源代码在https://github.com/docker/comp ...
随机推荐
- 让 JuiceFS 帮你做好「异地备份」
家住北京西二旗的小张是一家互联网金融公司的运维工程师,金融行业的数据可是很值钱的,任何的损坏和丢失都不能容忍. 为此,小张选了北京品质最高的机房,买了品质最好的硬件,做了全面的数据备份容灾策略: 每 ...
- 阿里巴巴 ali1688 Date +0800的问题
package com.example.testredis.controller; import java.text.DateFormat; import java.text.ParseExcepti ...
- IntersectionObserver对象
IntersectionObserver对象 IntersectionObserver对象,从属于Intersection Observer API,提供了一种异步观察目标元素与其祖先元素或顶级文档视 ...
- Js中Number对象
Js中Number对象 JavaScript的Number对象是经过封装从而能够处理数字值的对象,Number对象由Number()构造器以及字面量声明的值在转化为包装对象时创建,JavaScript ...
- 【Android 逆向】【攻防世界】APK逆向
1. apk安装到手机,提示输入flag 2. jadx打开apk 定位到checkSN方法 public boolean checkSN(String userName, String sn) { ...
- macOS使用CodeRunner快速配置fortran环境
个人网站:xzajyjs.cn 由于一些项目的缘故,需要有fortran的需求,但由于是M1 mac的缘故,不能像windows那样直接使用vs+ivf这种经典配置.搜了一下网上主流的跨平台方案,主要 ...
- OpenCV开发笔记(六十一):红胖子8分钟带你深入了解Shi-Tomasi角点检测(图文并茂+浅显易懂+程序源码)
若该文为原创文章,未经允许不得转载原博主博客地址:https://blog.csdn.net/qq21497936原博主博客导航:https://blog.csdn.net/qq21497936/ar ...
- 【LeetCode字符串#extra】KMP巩固练习:旋转字符串、字符串轮转
旋转字符串 https://leetcode.cn/problems/rotate-string/ 给定两个字符串, s 和 goal.如果在若干次旋转操作之后,s 能变成 goal ,那么返回 tr ...
- js之以面向对象的形式书写贪吃蛇
此代码存在一定的小bug,当蛇出边界之后存在一定的小问题 分析贪吃蛇功能需求: 1.食物 (1)每次生成一个,位置随意但不可超出规定范围 (2)每次蛇吃到食物之后,前一个食物消失同时新的食物又生成 ( ...
- 【Azure 应用服务】App Service for Linux环境中,如何解决字体文件缺失的情况
问题描述 部署在App Service for Linux环境中的Web App.出现了字体文件缺失的问题,页面显示本来时中文的地方,区别变为方框占位. 问题分析 在应用中,通常涉及到显示问题的有两个 ...