Move the apps to docker


#1

In my opinion it might be best to move the apps to docker images/containers. There are already dockers out there that would cover the apps and then some: http://tools.linuxserver.io/dockers are the guys I use for most things.

This would allow 1) quickly bringing apps into QB 2) would allow each user to each have their own container of each app. You’d just need to do the mappings for disk and network.

I dont see a lot of negatives with doing this. There is even a docker out there that will reverse proxy the other docker containers automatically and a tag along one that works with Lets Encrypt. They work REALLY well.



#2

Ive been playing around with docker in the last 1-2 months (mostly for webserver use) and like the idea however docker would introduce more work and knowledge for the user since managing docker containers is not easy. It would make Quickbox less “user/beginner friendly” which does not fit well with Quickboxs theme/philosophy.

Im interested to see their stance on it.


#3

Why would the user need to manage the docker containers? I see the panel managing the containers as far as creating, mapping, updating. The average user doesnt even know they are docker containers.

The linuxserver.io guys update the apps regularly on them or they are automatically updated on restart(the plex one does this). The QB panel could check for an update and prompt to ask the user if they want to update or prompt to restart the app. Plex one has a variable for version…ala PlexPass or normal, etc.

The config files for the apps would be mapped to the /home/user/config/my_app directory where you could customize it as needed.

I rarely, if at all, have to connect into the actual container to do any manual work but obviously advanced users can do that if they wanted to.


#4

As long as it works sure but if something stops working its usually not an easy fix especially if you want to get help. Who do you contact? Quickbox? The creator of the app? The creater of the docker container? Docker itself?

Another Issue would be dependency on other docker images which basically would mean QB has to create and maintain their own images for customization or small fixes.

It just adds another layer to manage, as of right now, in my opinion docker is not at the point where Quickbox should implement it.


#5

both examples your showing are using nginx not apache. but docker could be something QB looks into maybe in the paid ver would be a good thing to add in.


#6

it doesnt really matter if its nginx or apache in the container. You have a base web server that runs QB(currently Apache but could move to nginx) but the dockers run whatever base OS and Webserver the docker image developer chooses to use. The apache just has to talk to docker itself to control the containers and map the ports/mounts. It’s independent of the containers web server.

Think of the containers as self contained isolated instances of the app where the only things exposed are the overlay mounts and some ports that get mapped. https://docs.docker.com/v1.8/introduction/understanding-docker/