I started migrating my server where I run a ASL Hub and the Analog to Digital bridge to a docker architecture and I’m having issues getting ASL to run inside a container. The ASL installation completes without issues but after setting all the parameters the Asterisk doesn’t start.
I’m wondering if anyone has ASL running in a docker container already.
How’s the Docker project going? Any progress?
I stopped the project and move the HUB to a VMware for now until I finish with the docker image.
Feel free to send over the dockerfile to me and I’ll try it on my end.
Has anybody been successful in running ASL in docker yet?
Should be doable with docker-compose and a Debian image.
Hi Tim, it’s not that easy to do unfortunately. I’ve tried it and failed to compile. Using the repo is successful but… and this is massive but…systemd is not available in docker, (politics). It probably can be run in docker but it’s beyond my expertise. Not unless I throw some hours at it. Maybe someone will build a Dockerfile and a compose file one day. Who knows , thanks Tim keep up the good work! It’s amazing stuff! Looking forward to future developments
It’s not politics, it’s technical. It’s not a VM it’s a container. But you can run systemd with the privileged setting. Check it out.
I work with Docker on a daily basis. Could you please share your Dockerfile?
Thanks and 73 de N8PWM
I would also like to fiddle around with it too.
I also would love containerized ASL.
My experience was problems installing ASL-DAHDI. This was about a month ago, so I don’t have logs of the error I was getting, but I’ll try to summarize as best as I recall.
My host is Debian Bullseye. So I start with a base Debian Buster image. From there, I followed the instructions for installing ASL on buster. When it came to installing asl-dahdi, it would not install because the the kernel version being reported was my host’s kernel, not buster’s.
For this particular install, I ended up building ASL from source on the bare metal Bullseye. Aside from gathering a few dependencies, it was more-or-less straight forward.
So, I’m inclined to believe it is possible to run ASL in a container. But I would have LOVED a dockerfile / docker-compose file. This too is a bit out of my expertise level.
Don’t know if this info helped, other than to bump the topic.
I decided to take another stab at it.
The Dockerfile is on my github. GitHub - KM6IAU/asl-docker
I’ve got 2 dead-ends.
./configure #finishes successfully
make # fatal error
The fatal error is:
../astver.h:55:10: fatal error: zaptel/tonezone.h: No such file or directory
make: *** [/ASL-Asterisk/asterisk/Makefile.rules:42: chan_voter.o] Error 1
make: *** Waiting for unfinished jobs....
make: Leaving directory '/ASL-Asterisk/asterisk/channels'
make: *** [Makefile:361: channels] Error 2
Some googlefu suggests that dahdi replaced zaptel, so I figured I might try building asl-dahdi first… which leads to dead-end #2:
make -C linux all
make: Entering directory '/ASL-DAHDI/linux'
make -C drivers/dahdi/firmware firmware-loaders
make: Entering directory '/ASL-DAHDI/linux/drivers/dahdi/firmware'
make: Leaving directory '/ASL-DAHDI/linux/drivers/dahdi/firmware'
You do not appear to have the sources for the 4.15.0-200-generic kernel installed.
make: *** [Makefile:72: modules] Error 1
make: Leaving directory '/ASL-DAHDI/linux'
make: *** [Makefile:9: all] Error 2
(Of course, I did
apt-get install linux-headers-amd64 in the Dockerfile.) This was essentially the problem I had a month ago, and mentioned in the previous post. I may have solved the #1 problem a month ago, but I forgot how, if so.