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:
$ sudo apt install docker.io
2. Run the container
$ 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.
$ 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
$ docker build -t echopbx .
To develop without Docker, see the instructions in the README.