I'm working on making Docker the default way of installing BrewPi.
This will streamline the install process across platforms and will have the following benefits:
- It is much faster
- It is easier, because all the steps to install are already performed in the docker image. The only thing the user needs to do is install docker and deploy the image. No messing with setting up user and cloning git repos.
- The data lives outside of the container. Updating can be done by just destroying the container and starting a fresh one.
- Modified images contributed by users can be installed with ease too.
- This should also make it much easier to connect to multiple BrewPi Sparks from a single pi.
- BrewPi runs in an isolated environment, without the need to install any packages on the host.
I am documenting the new install process on our new wiki:
The docker repository can be found here:
I took inspiration from existing BrewPi containers, mainly the work of Geo.
Docker purists might tell me that I should use a container for each separate process, but I think running the brewpi script, nginx and php in a single container is probably easier to manage for novice users. It's not like we're trying to optimize for performance here.
I created a container based on Ubuntu and one on Raspbian. I have only tested them on a pi (running HyriotOS jessie) and on Ubuntu 17.
If you want to help, it is very much appreciated. You can do one of these things:
- Take the instructions and docker container for a spin and report back
- Fork and improve the container and send me a PR.
- Please help improve and expand the documentation on our new wiki! If you follow the install instructions and have time to make a few screenshots, that would be great too.