管理 PortSIP PBX Docker 容器

You are here:
← All Topics

在成功运行 PortSIP PBX 容器之后,我们可以采用如下方式来对容器进行管理。如果您不清楚怎么在容器里运行 PortSIP PBX, 请参照如下链接。

在 CentOS 上安装 PortSIP PBX v12
在 Debian上安装 PortSIP PBX v12
在 Ubuntu上安装 PortSIP PBX v12

列出当前运行的容器实例信息

$ docker ps -a

我们可以看到所有当前正在运行的容器实例,找到其中的 portsip- pbx 实例。信息包括有 "container id", "names".

停止 PortSIP PBX 容器实例

$ docker stop -t 120 portsip-pbx

或者使用容器 ID 来停止

$ docker stop -t 120 e2b6

其中 e2b6 是实例ID的前四位(此处e2b6仅用作举例,您需要使用实际的实例ID),我们只需输入ID的前四位而不用输入完整的容器实例ID。

注意,Docker 默认情况下停止容器实例只会等待10秒,如果超过这个时间容器实例还没有停止下来,Docker会强制停止实例。这样会导致 PortSIP 无法从容关闭。所以这里我们使用参数 -t 120 来设置 Docker 等待 PortSIP PBX 容器停止的时间。

容器实例停止后,重新启动容器实例

$ docker start portsip-pbx

or

$docker start e2b6

获取PortSIP PBX 容器实例的 bash shell

当 PortSIP PBX 容器实例运行的时候,我们可以使用下列命令来得到它的 bash shell.

$ docker exec -it portsip-pbx /bin/bash

删除容器实例

在 PortSIP PBX 容器实例停止后,我们可以使用如下命令来删除它

$ docker rm portsip-pbx
$ cd /var/lib
$ sudo rm -rf portsip

警告: 当您用如上命令删除 PortSIP PBX 的容器实例后,PortSIP PBX 的所有数据都将会丢失。

在删除容器实例后,您可以从 PortSIP PBX 容器镜像重新创建实例。执行下列命令将会在 IP 地址是 66.175.222.20 上创建一个新的 PortSIP PBX docker 实例。

命令中的 POSTGRES_PASSWORD 是用来设置 PortSIP 数据库的密码. 在本例中我们使用 123456, 您可以指定为您想设置的密码。
IP_ADDRESS 是 PBX server 机器的 IP地址. 在本例中,我们使用 66.175.222.20, 您需要根据实际情况改为您的 PBX 机器的 IP.
 详细请参考:

在CentOS 上安装 PortSIP PBX v12
在 Debian上安装 PortSIP PBX v12
在 Ubuntu上安装 PortSIP PBX v12

$ docker container run -d --name portsip-pbx --cap-add=SYS_PTRACE --network=host -v /var/lib/portsip:/var/lib/portsip -e POSTGRES_PASSWORD="123456" -e POSTGRES_LISTEN_ADDRESSES="*" -e IP_ADDRESS="66.175.222.20" portsip/pbx:12

删除 PortSIP PBX 的容器镜像

如果您要删除 PortSIP PBX Docker 镜像,首先需要列出镜像的详情。注意:您必须先把 PortSIP PBX 的容器实例停止并删除才能删除镜像。

$ docker image list

删除镜像

$docker image rm 22d5

其中 225d 是容器镜像 ID 的前四位,您需要根据您的实际情况来替换为您的镜像 ID 前四位。