概述

freeswitch是一款简单好用的VOIP开源软交换平台。

因为centos系统期限的原因,尝试在debian的docker上使用fs。

环境

docker engine:Version 24.0.6

debian docker:bullseye 11.8

freeswitch:v1.10.7

Debian准备

目前debian的最新版本是bookworm(12.4),然后是bullseye(11.8)和buster(10.13)。

首先尝试在bookworm(12.4)上编译fs,会有报错(apr_general.h:33:14: error: '__DARWIN_NSIG' undeclared here),没有深究就先放过了。

然后尝试在bullseye(11.8)上编译fs,一次过很顺利。

sudo docker pull debian:bookworm

sudo docker pull debian:bullseye

启动docker容器,版本使用debian:bullseye。

sudo docker run -itd --name debian.bullseye-fs.1.10.7 debian:bullseye

fs编译

进入docker容器。

sudo docker exec -it debian.bullseye-fs.1.10.7  bash

更新系统。

cd /root/

apt-get update

apt-get install git

安装fs依赖。

TOKEN=YOURSIGNALWIRETOKEN

apt-get update && apt-get install -yq gnupg2 wget lsb-release

wget --http-user=signalwire --http-password=$TOKEN -O /usr/share/keyrings/signalwire-freeswitch-repo.gpg https://freeswitch.signalwire.com/repo/deb/debian-release/signalwire-freeswitch-repo.gpg

echo "machine freeswitch.signalwire.com login signalwire password $TOKEN" > /etc/apt/auth.conf

chmod 600 /etc/apt/auth.conf

echo "deb [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/debian-release/ `lsb_release -sc` main" > /etc/apt/sources.list.d/freeswitch.list

echo "deb-src [signed-by=/usr/share/keyrings/signalwire-freeswitch-repo.gpg] https://freeswitch.signalwire.com/repo/deb/debian-release/ `lsb_release -sc` main" >> /etc/apt/sources.list.d/freeswitch.list

apt-get build-dep freeswitch

下载fs。

git clone https://github.com/signalwire/freeswitch.git -bv1.10.7 freeswitch

cd freeswitch

编译安装。

chmod 775 -R *

apt-get install libks signalwire-client-c

./bootstrap.sh -j

./configure

make

make install

+---------- FreeSWITCH Build Complete ----------+
+ FreeSWITCH has been successfully built. +
+ Install by running: +
+ +
+ make install +
+ +
+ While you're waiting, register for ClueCon! +
+ https://www.cluecon.com +
+ +
+-----------------------------------------------+

总体比较顺利,中间增加了对libks和signalwire-client-c的安装。

总结

centos系统后续的维护问题需要关注。

Debian系统的依赖包大多比较新,比centos要友好。

Debian和rocky的方向需要验证和抉择一下。

空空如常

求真得真

freeswitch on debian docker的更多相关文章

  1. debian docker环境搭建

    环境(阿里): 登陆到系统: 我们主要看执行结果截图(所有命令都进行复制) 卸载旧版本: 使用 APT 安装: 这里 输入 y  然后等待执行结束 添加软件源的 GPG 密钥. 一开始我是手打的命令, ...

  2. 如何在 Debian 9 上安装和使用 Docker

    Docker 是一个容器化平台,允许您快速构建,测试和部署应用程序,作为便携式,自给自足的容器,几乎可以在任何地方运行. Docker 是容器技术的事实上的标准,它是 DevOps 工程师及其持续集成 ...

  3. docker中安装ssh服务

    系统:Debian Docker 目标:在docker(debian系统)中安装ssh服务,实现远程登陆和控制docker 步骤: 初始状态:通过docker pull debian得到的一个debi ...

  4. Docker 使用教程

    概括  Docker与传统虚拟机的区别 与传统虚拟机的区别  Docker的安装 的安装  Docker daemon , client , containerd  镜像与容器操作  容器运 ...

  5. Docker简介/安装/使用

    什么是Docker?docker是一个开源的应用容器引擎,系统级的轻量虚拟化技术.应用程序的自动化部署解决方案,能够迅速创建一个容器,并在容器上部署和运行应用程序,并通过配置文件可以轻松实现应用程序的 ...

  6. Docker安装管理界面portainer

    在Ubuntu或者Debian已经部署完毕Docker 拉取镜像文件: sudo docker pull docker.io/portainer/portainer Using default tag ...

  7. 4、Docker的安装

      docker官方安装文档 Mac上安装Docker   Install Docker for Mac | Docker Documentation Windows安装Docker   Instal ...

  8. 在docker容器中调用docker命令

    宿主容器均为CentOS7.6.1810 docker run -it --rm \ -v /usr/bin/docker:/usr/bin/docker \ -v /var/run/docker.s ...

  9. 拾遗:Docker 基本应用

    https://wiki.gentoo.org/wiki/Docker 检查内核内核选项 exec /usr/share/docker/contrib/check-config.sh 使用 btrfs ...

  10. docker 使用 Nvidia 显卡

    docker19.03读取NVIDIA显卡 作者: 张首富 时间: 2019-09-06 w x: y18163201 前言 2019年7月的docker 19.03已经正式发布了,这次发布对我来说有 ...

随机推荐

  1. 效率工具:Hutool 嘎嘎香,被秀到了!

    在日常开发中,我们会使用很多工具类来提升项目开发的速度,而国内用的比较多的 Hutool 框架,就是其中之一. 先来看官方对于 Hutool 的定义: Hutool 是一个小而全的 Java 工具类库 ...

  2. [python]数据分析--数据清洗处理case1

    数据预处理案例1 主要涉及pandas读取csv文件,缺失值和重复值处理,分组计数,字段类型转换 ,结果写入到Excel. 根据要求对CSV数据集进行处理要求如下: 保留数据关键信息:time.lat ...

  3. 为什么说数字孪生和GIS高度互补?它们各自从对方那里获得了什么?

    在数字化时代,数字孪生和GIS作为两项重要技术,它们的融合正日益受到人们的关注和认可.数字孪生是将实体世界与数字世界紧密结合的技术,可以创建实时的虚拟副本,对物理系统进行模拟.优化和预测.而GIS则是 ...

  4. Python——第五章:time模块、datetime模块

    time模块 在平常的代码中,我们常常需要与时间打交道.在Python中,与时间处理有关的模块就包括:time,datetime,calendar(很少用,不讲),下面分别来介绍. 我们写程序时对时间 ...

  5. 【WALT】调度与负载计算(未更新完)

    [WALT]调度与负载计算 代码版本:Linux4.9 android-msm-crosshatch-4.9-android12 注:本文中的任务主要指进程. @ 目录 [WALT]调度与负载计算 一 ...

  6. 文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题

    文心一言 VS 讯飞星火 VS chatgpt (55)-- 算法导论6.3 1题 一.参照图6-3 的方法,说明 BUILD-MAX-HEAP在数组 A=(5,3,17,10,84,19,6,22, ...

  7. 文心一言 VS 讯飞星火 VS chatgpt (52)-- 算法导论6.2 4题

    四.当i>A.heap-size/2 时,调用 MAX-HEAPIFY(A,i)会有什么结果? 文心一言: 当 i > A.heap-size/2 时,调用 MAX-HEAPIFY(A, ...

  8. C#数据结构与算法系列(十六):时间复杂度(上)

    1.时间频度 介绍: 一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,他花费时间越多.一个算法中的语句执行次数称为语句频度或时间频度 举例说明: 比如计算1-100所有数字 ...

  9. LeetCode 二分查找篇(69、33、704)

    69. x 的平方根 实现 int sqrt(int x) 函数. 计算并返回 x 的平方根,其中 x 是非负整数. 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去. 示例 1: 输入: ...

  10. 一文让你彻底掌握ThreadLocal

    本文分享自华为云社区<[高并发]一文带你彻底搞懂ThreadLocal>,作者: 冰 河. 我们都知道,在多线程环境下访问同一个共享变量,可能会出现线程安全的问题,为了保证线程安全,我们往 ...