FreePBX 16 w/ Asterisk 18.6 Docker image

Anyone using Docker?

I’ve been using FreePBX from a Docker image for a while, but I notice there’s a bunch of (mostly Asterisk modules) stuff missing.

I’m currently working on creating my own (company) Docker image, and I just thought I’d ask whoever reads this… What would you want from a FreePBX Docker image? I have a full Asterisk image done, and now I’m creating the FreePBX layer on top.

That is not the point of Docker. Asterisk is not a statefully designed system. There are so many different things that change.

Hi @sorvani, It would be awesome if you could be more constructive; I understand that things in Asterisk change - but what are your concerns about?

We currently have persistent storage for configuration, and are moving databases into a seperate container, I would love your feedback into what things change that require persistence?

Something like this is what I’m currenly looking at

One previous opinion from a FPX stalwart :-1:

1 Like

What value does the containerization add? Rather than asking “what are your concerns?” I would say “why would anyone want to do this?”

3 Likes

So much this. There is no value to Asterisk, let alone FreePBX on top of it, from being containerized.

1 Like

A long time ago , before $5 cloud instances, we “containerized” multiple PBI on ‘big and expensive hardware’ using Proxmox KVM’s it worked very well, It probably still does, but why would anyone do that in 2021?, the same thing could be probably done much easier using LXD/LXC’s KVMs if you want to go that way.

Easy (and fast) deployment, automatic updates, much smaller installation size. Portability?
In our case, Cisco IP Phone support out of the box.

The container only requires packages that are needed for runtime, and doesn’t need to have any of the build/development packages installed.

The system we currently run FreePBX on is a very closed environment with limited resources that would be painful to try and build Asterisk on.

One of the most obvious points would be that it avails FreePBX to those wanting to try out FreePBX without having unlimited time/resources at their disposal (this was me when I first tried someone else’s Docker image, that I’ve been using for around a year now without issue)

I didn’t realise how ‘purist’ this community is, and was just after some constructive feedback about ways to improve the image, which it seems I won’t get on here.
Instead I’m being asked to defend my choice of containerisation.

It’s obvious I’m not the only one using containers (this Docker image has over 1 Million pulls), but I can now see why many of them would choose not to participate in these forums.

Thanks for the warm welcome guys.

I wanted to know the value of it, not shoot you down. How does it make the install any smaller than a traditional install without the build system?

1 Like

You came here less than a day ago with :-

I’m currently working on creating my own (company) Docker image, and I just thought I’d ask whoever reads this… What would you want from a FreePBX Docker image? I have a full Asterisk image done, and now I’m creating the FreePBX layer on top.

The general constructive feedback was “why would you want to do that” with supporting threads. But you perceived something else, So first “welcome” then I suggest you explore these fora for many opinions about virtualization of many flavors. Have you colluded with

https://hub.docker.com/r/izdock/izpbx-asterisk

or indeed with

https://hub.docker.com/r/tiredofit/freepbx

yet? I have tried both, several times but neither 'cut the mustard ’ for me as yet.

2 Likes

Just last Thursday, during the Open Source Lounge, this specific subject was brought up and discussed in detail for quite some time.

@dicko I did find your post constructive (and liked it). I have checked out the link, but haven’t had a huge chance to review izpbx.

Why? How could they have been improved to work for you?

I agree it wasn’t a warm welcome. Sorry about that. Hope you’ll be part of this community.

I had a look at the dockerhub link you posted and I suppose I would be happier about it if I were really into docker and/or had a ton of familiarity with it. But without a strong docker background I am not seeing the benefit. It looks like a bunch of file, environment variable, network mappings are needed, not to mention another container for the DB - after all that, I’d probably be inclined to build out FreePBX 16 with packaged versions of asterisk & etc. using one of the 5-minute scripts you can find around here. So personally I need a little more convincing but don’t want to discourage you from your efforts. Let us know how it goes.

I will tell you that in my considered opinion, docker is not a way I would go to containerize Asterisks, for many reasons, mostly network related.

As I suggested, you can better do an LXD/LXC kvm machine which should be equally ‘transportable’, if you want more than one on the same machine, you will need to solve many other problems also network related, (as you will with a docker). I always look for pragmatic, But I rarely ignore ‘intriguing’ docker was that thing, so I remain unconvinced, but good luck with your ongoing efforts.

Thank you. I came here to try and be a part of the community.
Either way I get paid while doing this, I just thought if I can contribute in a way that may assist more than just my company, it wouldn’t be such a bad thing.

I avoided Docker like the plague for quite some time, but now I see it’s value. I’m not suggesting it’s the right tool for everyone, but for us, it means we can deploy a whole system in minutes.

Perhaps one of the issues with Docker and Asterisk/FreePBX containers that I’ve seen is that they’re being used more like a VM than a lightweight container. Sure it can be used this way (but isn’t recommended) however it lacks some of the advantages to using Docker in the first place.

I don’t plan on implementing a bunch of “features”, but rather have it as a base that can be used by others to add their own stuff.

Given that the FreePBX/asterisk configuration is split between:

  • mysql DB
  • filesystem
  • sqlite DB
  • potentially /tftpboot for the phones
    (did I forget anything?)

Using docker doesn’t seem to add much value due to this IMO. Updates to FPBX will likely also alter the DBs, so rollback is more complicated than simply rolling spinning up a new docker container with the previous version.

Personally I just use virtual machines(Vsphere for production, VirtualBox on my laptop) and clone or restore them as needed.

Apache and NodeJS as well.

And mongodb and an MTA, never mind the mix of iptables

Please don’t. Just use LXD if you want to containerize it.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.