在 Docker 运行 3CX
如果没有安装 Docker 的话需要先安装 Docker。我们封装的是 Linux 版本的 3CX 镜像。
Linux 版本可以使用以下方式安装 Docker:
wget -qO- get.docker.com | bash
Windows 版本可以在这个链接下载 Windows 版的 Docker: Docker for Windows
Windows 用户需要切换 Docker 底层为 Linux 才可使用
接着我们输入以下命令创建 macvlan 网络:
docker network create \
-d macvlan \
--subnet 192.168.1.0/24 \
--gateway 192.168.1.1 \
-o parent=eth0 3cx_eth0
macvlan 是为了让容器直接与我们的网络相连,所以请根据自己的网络信息修改网段和网关。其中 eth0 为机器实际网卡,3cx_eth0 为 docker macvlan 网卡。
运行 Docker 容器
docker run \
-d \
--hostname {YOUR HOSTNAME} \
--memory {MEMORY} \
--memory-swap {SWAP MEMORY} \
--ip {IP ADDRESS} \
--network 3cx_eth0 \
--restart unless-stopped \
-v 3cx_backup:/mnt/backup \
-v 3cx_recordings:/mnt/recordings \
-v 3cx_log:/var/log \
-v /sys/fs/cgroup:/sys/fs/cgroup:ro \
--cap-add SYS_ADMIN \
--cap-add NET_ADMIN \
--name 3cx \
58voip/3cx:latest
说明一下需要修改的参数:
- hostname: 主机名,可以根据自己的需求修改。
- memory: 内存限制。比如:1024M。
- memory-swap: swap。比如:1024M。
- ip: 3CX 的内网 IP 地址。比如:192.168.1.33。
- 3cx_backup,3cx_recordings,3cx_log 为 docker 映射到本地的目录。
如果需要安装指定版本,可以在 https://hub.docker.com/r/58voip/3cx/tags 查看目前我们制作的所有 tag。比如想安装 v16 版本,只需把最后一行的 58voip/3cx:latest 改成 58voip/3cx:16.0.8.9 即可。
设置时区。可以在 /usr/share/zoneinfo/
找到对应的时区。中国有重庆和上海两个时区可以填 Asia/Shanghai 和 Asia/Chongqing
docker exec 3cx timedatectl set-timezone Asia/Shanghai
初始化 3CX
docker exec -ti 3cx /usr/sbin/3CXWizard --cleanup
等初始化完成后按 1 进到网页配置,打开虚拟机 IP:5015 就可以看到配置界面。