docker-asterisk
My playground to dockerize asterisk configuration
Work in progress
asterisk
directory
The main directory, should be self sustainable now. Other directories are kept for reference.
Container exposes following volumes :
/etc/asterisk
/var/log/asterisk
/var/lib/asterisk
useful commands to manage the container :
#run with default configuration files
docker run --name asterisk -d -p 5060:5060 -p : <Add RTP ports opening> yvnicolas/asterisk
#run with conf file from the host
docker run -v <path to conf file dir on host>:/etc/asterisk --name asterisk -d -p 5060:5060 yvnicolas/asterisk
# get an asterisk console
docker exec -ti asterisk asterisk -cvvvvvvvvr
# access to `/etc/asterisk` with view to your current host directory
docker run -ti --rm --volumes-from asterisk -v $(pwd):/hostdir
RTP ports considerations
Historically, 2 possibilities to allow mapping of Rtp ports without docker support of port range mapping : using --net=host
or do an individual range mapping of -p:port:port/udp
with creating correctly rtp.conf file. Used Areski Belaid's docker asterisk post as background info on the subject.
It seems issue has been addressed in docker
Still needs to find out from which release
Troubleshooting
Instead of starting the container with a -d
start it with docker run -ti [...] yvnicolas/asterisk /bin/bash
Start asterisk front in the container
pbxrunner@876876: asterisk -cvvvvvvvv
Old directories
directory sshdocker
contains a stand alone debian based container accessible via SSH
To build an asterisk image that has just asterisk Compiled :
cd asterisk
docker build -t asterisk:basecomp .
cd asteriskconf
docker build -t asterisk:conf
to run the container :
docker run -d -p <sshport:22> -p 5060:5060 asterisk
replace sshport with whatever you want to avoid standard 22 port.
Not able at this stage to start properly asterisk from an ENTRYPOINT or CMD in image. Once the container is started, connect to it using ssh and run
asterisk start