Hacker News new | ask | show | jobs
by amanzi 2889 days ago
I run a whole bunch of different servers and apps in Docker on an old laptop with an i7 processor and 16GB RAM.

One of my favourite self-hosted apps is WikiJs (https://wiki.js.org/). It takes a git repository of markdown files and turns it into an editable wiki and syncs back changes to the git repository.

I also use InfluxDB with Chronograf and Telegraf (https://www.influxdata.com) to collect and analyse logs. It's not quite as full featured as Elastic or Prometheus but is easy to use, rock-solid and nice to look at. Plus they sent me a free pair of socks (all the way to NZ) for filling in a survey! :-)

And to help manage all the Docker images I spin up and down, I use Portainer - https://portainer.io/

Forgot to add that just recently I've started to run Apache Guacamole to give me remote access to my local LAN while I'm not at home. This is so great - HTTPS access to RDP, VNC, and SSH sessions. https://guacamole.apache.org/

2 comments

I also like the TICK stack and we recently chose this for production use over Elastic. Admittedly Elastic has more features and is possibly even more stable, but TICK inherently much more efficient (you can run it on a Raspberry Pi). InfluxDB also has some nice downsampling and retention policy features that allows it to run more efficiently in a constrained environment.
How do you keep your docker images up to date? With virtual machines or even lxd containers, you can enable unattended upgrades but not with docker. There is a project (I forget the name) to destroy and rebuild containers with the newer image version, but it doesn't work with images that are built off of others using a Dockerfile.
I just do it manually for now but have created some bash_aliases to help:

  alias dcup='docker-compose up -d'
  alias dcrestart='docker-compose down && dcup'
  alias dcpull='docker-compose pull'
  alias dcpullup='docker-compose pull && docker-compose up -d'
watchtower (https://github.com/v2tec/watchtower) is the project you're probably thinking of. It works great for me.
This looks useful, thanks for the link.