Self Hosting Log - 003 - WikiJS
January 15, 2022
Gotta store those docs somewhere!
I’ll be honest before starting this, this has been one of those apps I’ve stood up, proceed to go “sweet I can’t wait to use this!” and it’s been about six months and it still has the demo, hello world page up. However I do plan to ramp my use of this up a bit as I’ve started to collect more and more useful tidbits. It also will help to just have documentation in case something ever happens to me and someone needs to know what’s up. Or, for sharing things with friends.
I partly have this use case solved already, via Synology Note Station. However that’s not easily sharable for one and the editor in Note Station is a bit bare bones. Also, I think eventually I would like to build my own storage server from scratch. I do love my Synology and I plan to deploy at least one more, but I think minimising the dependency is always good. So, I decided to set up my own documentation / wiki and I landed on WikiJS!
My reasons for choosing this are pretty simple, in that I didn’t do that much thinking on it. But, I got introduced to the tool via the Self Hosted podcast which is the only podcast I really listen to, highly recommend. One of the episodes they talk about trying to find the perfect wiki software for them, where they touch on WikiJS. Now, I won’t explain their reasons for not choosing it, I’ll let you listen to the show for that. But, I just found playing with WikiJS, it was enough of a black box for me that I could just focus on writing, but I could also go a bit more controlling with using say their Markdown editor for example. The UI is nice too, so again something I wanted to bear in mind if I do share this out to others.
Now as for deployment, again we’re using Docker Compose. WikiJS maintainers do provide a Docker Compose, however the great folks over at Linux Server provide their own image that in terms of Compose files, is just a bit easier and I do enjoy things being easier. So again, here’s what I landed with, very close to the example they provide.
version: "2.1"
services:
wikijs:
image: ghcr.io/linuxserver/wikijs
container_name: wikijs
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
volumes:
- /srv/wiki-js/configuration:/config
- /srv/wiki-js/data:/data
restart: unless-stopped
labels:
- traefik.enable=true
- traefik.http.routers.wikijs.rule=Host(`wiki.evanwebservices.com`)
- traefik.http.routers.wikijs.tls=true
So, there you have it. You may note the labels section, which relates to my reverse proxy of choice, Traefik. I’ll be talking about that in my next post, spoiler alert, I love it. I think if you’re going this route of Docker Compose, it’s one of the easiest reverse proxies to set up.
Thank you!
You could of consumed content on any website, but you went ahead and consumed my content, so I'm very greatful! If you liked this, then you might like this other piece of content I worked on.
Self Hosting Log 002 - GitlabPhotographer
I've no real claim to fame when it comes to good photos, so it's why the header photo for this post was shot by Marc-Olivier Jodoin . You can find some more photos from them on Unsplash. Unsplash is a great place to source photos for your website, presentation and more! But it wouldn't be anything without the photographers who put in the work.
Find Them On UnsplashSupport what I do
I write for the love and passion I have for technology. Just reading and sharing my articles is more than enough. But if you want to offer more direct support, then you can support the running costs of my website by donating via Stripe. Only do so if you feel I have truly delivered value, but as I said, your readership is more than enough already. Thank you :)
Support My Work