EchoPBX GitHub

Guide

Install EchoPBX

EchoPBX runs as a single Docker container. This takes a few minutes on any Linux server.

EchoPBX is currently in beta. If you run into trouble, please open an issue. No question is too small.

Requirements

A Linux machine with Docker. Asterisk does not run on Windows, but you can use Docker Desktop to run the container there.

1. Install Docker

On Ubuntu-based distributions:

Terminal
$ sudo apt install docker.io

2. Run the container

Terminal
$ sudo docker run -d --name echopbx --restart unless-stopped --network=host -v /opt/echopbx:/data ghcr.io/ljfloor/echopbx:main

The container runs in the background and starts again after a reboot. To see its logs, run sudo docker logs -f echopbx.

All data is stored in /opt/echopbx on the host. The container uses host networking, which exposes SIP on port 5060 and the web interface on port 8740. Publishing those ports in bridge mode caused connection and one-way audio problems with some phones, so host networking is the recommended setup for now.

3. Open the web interface

Browse to http://<server-ip>:8740. The setup wizard asks you to accept the license and create an admin account. After that you can add extensions, trunks and queues.

Connect a phone

Any SIP client or IP phone works. For a softphone on your computer, MicroSIP is easy to set up. The extension page in EchoPBX shows the settings to enter, and the phone appears as connected once it registers.

Updating

Pull the new image, remove the old container and start it again. Your data in /opt/echopbx is kept.

Terminal
$ sudo docker pull ghcr.io/ljfloor/echopbx:main
$ sudo docker rm -f echopbx
$ sudo docker run -d --name echopbx --restart unless-stopped --network=host -v /opt/echopbx:/data ghcr.io/ljfloor/echopbx:main

Build from source

Terminal
$ docker build -t echopbx .

To develop without Docker, see the instructions in the README.