Yesterday I upgraded my Docker setup from v1.5 to v.10. I had to do a full apt-get dist-upgrade as well to bring my system up to Debian Jessie. On the way I discovered that my backup script wasn’t backing up anything from my personal wiki running with DokuWiki. Another case of Schroedingers Backup: The backup is only there, if it can be successfully restored. ☹ Anyway, I had only a few snippets from my daily development work and some links to software I tend to use on the wiki, so not that much of a loss. And because I had to set up my wiki again, I decided to build a minimal container instead of re-using the offical php images.
I am already using Alpine Linux for a couple of images at work and I am switching everything using busybox to it too. So it was a natural decision to build the minimal wiki container with Alpine as well. Modifying the Dockerfile was easy, and I also added some ONBUILD instructions to let users add their own users, access control list and DokuWiki configuration. I probably will provide an image to just run a wiki instance and one with the ONBUILD instructions to extend from.
Here’s the README:
Create the files local.php, acl.auth.php and users.auth.php according to DokuWiki documentation. They will be added when you build your own image. Create a Dockerfile in the same directory as your configuration files:
Build the Dockerfile:
docker build -t yourname/dokuwiki .
Start your wiki:
docker run -d --name some-dokuwiki -p 8080:80 yourname/dokuwiki
Now you can access your dokuwiki at http://localhost:8080