本文相关资源下载地址: 点击这里。
1. 首先安装docker: 参考这篇文章;
2. 下载docker镜像文件: freeswitch1.10.6-debian10.tar
3. 导入docker镜像文件: docker load -i freeswitch1.10.6-debian10.tar
4. 查看所有docker镜像: docker images
5. 安装mariadb数据库; 参考这篇文章;mariadb的镜像可以从docker-hub pull下来,也可以从附件的网盘下载;
创建一个mariadb的容器并启动;
使用navicate连接到mariadb; root 密码设置为123456; 创建Freeswitch数据库,设置编码为 utf8mb4 -- UTF-8 Unicode;
导入Freeswitch1.10的sql文件;
6. 下载 freeswitch-1.10.6-bin-debian10.zip,拷贝并解压缩到宿主机的 /home/freeswitch/ 目录;
docker run -itd --name freeswitch -v /home/freeswitch:/usr/local/freeswitch --network=host freeswitch1106-env-for-debian10 /usr/local/freeswitch/bin/freeswitch -nonat -nosql
docker ps 查看当前运行中的容器
7. 进入容器: docker exec -it freeswitch /bin/bash
或者直接进入fs_cli控制台: docker exec -it freeswitch fs_cli
启动容器: docker start freeswitch
停止容器: docker stop freeswitch
8. 再次使用分机相互拨打测试
说明:这里把容器内的 /usr/local/freeswitch 映射到外部 /home/freeswitch,编译修改配置文件和后期维护程序更新。
另外录音也可以写入到 /home/freeswitch 目录下。
关于性能优化:
a. 使用mysql 替代默认的sqlite文件数据库;
b. 修改 conf/autoload_configs/switch.conf.xml 文件,
sessions-per-second=300 、 loglevel=INFO 、 max-db-handles=500 、 rtp-start-port=20000 、 rtp-end-port=40000