So Self Hosted
| 9 minutes
A breakdown of all the services and tools that I self-host
several quite a few (OMG) on-line services either just for fun or to provide me with a facility ordinarily provided by a paid-for third-party organisation.
One or two are hosted on my under-the-desk Ubuntu server, they’re just for my own use at home, whilst the majority are running on one of my VPSs that I seem to collect with gay abandon.
I thought I’d catalogue the ones I currently use:
Mattermost is a flexible, open source messaging platform that enables secure team collaboration
Back in the day I was a big IRC user (my domain name has its roots there). I’m so used to that kind of text environment that when team chat software arrived it was a natural fit for me.
Slack is probably the big player in this area and sure I have my own freebie Slack account (I had a paid one for a while). I’d probably still use it if accounts were free but I feel the effect of subscription fatigue creeping up on me. Since Mattermost bills itself as an Open Source, Self Hosted Slack Alternative, that’ll do for me.
I have a number of teams setup on the Mattermost instance. One for @LisaSew’s business where I’m the in-house tech-support. I have another for Oldham Rugby League Club related stuff and then one for my own use which I use as a dumping ground for ideas.
I have the Desktop client open all the time and the Android client lives on my phone.
Mattermost works great for me and Lisa. We’re happy with it.
A free, self-hostable aggregator.
When Google Reader closed down, I went looking for a replacement. I had a Fever installation but when development stopped I found FreshRSS. I had it up and running in no time.
It does what it says on the tin.
Nextcloud puts your data at your fingertips, under your control. Store your documents, calendar, contacts and photos on a server at home, at one of our providers or in a data centre you trust.
I have accounts at several of the cloud storage companies such as Dropbox, PCloud and Mega etc but I use my NextCloud installation for most cloud storage requirements. I don’t use the real time sync clients on any platform because I use Rclone on computers and FolderSync on my phone.
It’s perhaps something of a luxury but one of my budget VPSs came with a large amount of drive space so I thought I may as well use it.
a simple server for sending and receiving messages
A Pushover type notification service written in Go. I use Nginx as a reverse proxy to Gotify. There’s an Android app I use on my devices as well as a CLI tool to use on computers
When something configured happens, clients go boing to alert me. We’re talking servers/sites going offline, website sales, reminders. Anything at all really.
Self Hosted Newsletter App Built on Top of Nodemailer — think MailChimp but run by you.
I ran a low volume mailing list for Oldham Rugby based on new website posts. I used a starter-kit to create MJML templates to take the website article body text and then push it out on the relevant mail list.
It’s currently lying dormant but I’m hanging on to it because it’s actually really useful and I may find another use for it.
ERP beyond your fridge. A self-hosted household and grocery management system where all your data is your own.
I love Grocy because it’s bonkers. You can become completely nerdy and maybe a little bit anal about the contents of your fridge and cupboards.
Scan products, set expiry dates, create meal plans, save recipes, manage batteries, record equipment etc etc. What’s not to like.
I have it installed, configured and updated, I just haven’t populated the database yet. One free,rainy afternoon I will go there.
imageproxy is a caching image proxy server written in go.
- basic image adjustments like resizing, cropping, and rotation
- access control using allowed hosts list or request signing (HMAC-SHA256)
- support for jpeg, png, webp (decode only), tiff, and gif image formats (including animated gifs)
- caching in-memory, on disk, or with Amazon S3, Google Cloud Storage, Azure Storage, or Redis
- easy deployment, since it’s pure go
I’m fascinated by image proxies. I like the Unix philosophy of tools doing one job and doing it well. Having the webserver deal with image resizing or manipulation seems a bit offside to me.
The particular proxy I use is by Will Norris and written in Go. You prefix an image URL with the URL of the proxy and enjoy lightning fast image processing.
For instance here’s my boy Tandy Miller:
Left to right: Full size, 75% size, 50% size, achieved like this (in markdown):
I use my proxy a lot. If it ever blows up, I’m DOOMED lol.
An image hosting script that allows you to get your own image hosting website. It’s your hosting and your rules, say goodbye to the closures and restrictions.
Similar to Imgur and a bit like Flickr, and then again it’s not.
I like it because I can upload an image and receive a block of different URLs to embed the image or maybe manipulate it with my image proxy.
I have mine set to single user and mostly private. It’s cool.
An image gallery. There’s probably a lot of crossover here but Lychee is simpler than Chevereto. I’ve had an installation of it for many years.
My current Lychee gallery is from a branch of the software that can deal with nested galleries. I use it to host Oldham Rugby images whereby I can create season galleries and then populate them with game galleries.
I’ve installed a plugin that provides an RSS feed so that I can then created embedded photo galleries on the Oldham website via the Justified Image Grid WordPress plugin.
Heimdall Application Dashboard is a dashboard for all your web applications. It doesn’t need to be limited to applications though, you can add links to anything you like. There are no iframes here, no apps within apps, no abstraction of APIs. if you think something should work a certain way, it probably does.
I have this set as my homepage in Google Chrome. It helps me to remember what the hell I have out there!.
Google Analytics alternative that protects your data and your customers’ privacy Take back control with Matomo – a powerful web analytics platform that gives you 100% data ownership. Matomo used to be called Piwik.
My favourite bit about Matomo is that sometimes I’m asked for the Google Analytics on a site I manage and I’m able to say that I don’t use it, because Matomo. The looks on the blank faces makes me laugh.
Apparently it’s pronounced Ma-towmo however I say Ma-tu-mo. I don’t suppose it really matters.
PrivateBin is a minimalist, open source online pastebin where the server has zero knowledge of pasted data. Data is encrypted and decrypted in the browser using 256bit AES in Galois Counter mode.
I set this up very quickly one morning when it was Glastonbury Ticket Day, probably some of the most stressful few hours of the year.
You can purchase six tickets in one go so the method is to have a group of people all trying to get tickets. If someone gets through it’s a race against time to enter everybody’s registration details before the tickets sell out.
I was able to collate and share everyone’s information securely using Privatebin.
I left the thing installed because I now use it to supply passwords and login details for people.
Remark 42 is a self-hosted, lightweight, and simple (yet functional) commenting system, which doesn’t spy on users. It can be embedded into blogs, articles or any other place where readers add comments.
I wrote about Remark 42 the other day but in short, since you can’t natively implement comments on a static site, you need to find a third-party solution.
I saw someone on Reddit talking about the software and installed it pretty much straight away.
FreeScout is the super lightweight free open source help desk and shared inbox written in PHP7 (Laravel 5.5 framework). It is a self hosted clone of HelpScout. Now you can enjoy free Zendesk & Help Scout without giving up privacy or locking you into a service you don’t control.
There’s nothing like hosting a help desk ticketing service when you can send yourself support queries when drunk and then answer them in the morning. Hours of fun to be had.
Anyway, I used to use OSTicket for a while, trialled HelpScout for a bit before stumbling upon FreeScout. So that’s what I use now. Just got to get people to play ball.
FileGator is a free, open-source, self-hosted web application for managing files and folders.
Another tool I set up to deal with sending and receiving files from technophobes. They still managed to mess it up — it even looks like a file manager FFS.
I despair sometimes.
Plik is a scalable & friendly temporary file upload system ( wetransfer like ) in golang.
My own WeTransfer clone.
I hate sending and receiving files by email. I mean I REALLY hate it. The only time I’ll do it is one small image or document, that’s about it.
Anything else, use a file transfer service. Plik is one of those and I can control it from the command line via its cli client, so it’s all good.
Beehive is an event and agent system, which allows you to create your own agents that perform automated tasks triggered by events and filters.
I run Beehive on my local server. I’d hosted Huginn a while back but ended up using the server for something else. Beehive is just one Go binary so I run it for shits and giggles.
It currently sends me a message at 4.50pm every day that goes “Boom, still got it”. It makes me laugh anyway.
An easy to use Status Page for your websites and applications. Statping will automatically fetch the application and render a beautiful status page with tons of features for you to build an even better status page. This Status Page generator allows you to use MySQL, Postgres, or SQLite on multiple operating systems.
Statping keeps an eye on any services that I want to monitor. That’s it really!
I had included things like DokuWiki, WordPress and Hugo but they’re website platforms and not really hosted tools.
Until writing down all the services I’d not realised just how much stuff I manage. Ah well, it all keeps me busy.
Photo by Christopher Burns on Unsplash