Jan 09, 2019
Switching to a Self-Hosted Life
I used to be all-in on the Google ecosystem. I used Android, Gmail, Drive,
Project Fi, and Google Docs. But it always bothered me that all of my data was
sitting on a server somewhere that I couldn’t control.
I also subscribed to You Need a Budget (YNAB) to track my spending. But it
always bugged me that I was paying ~$50 per year for a service that was supposed
to help me spend less, and they had all of my data.
I decided to switch all of those services over to my own control, utilizing
the power of DigitalOcean and Docker, and taking advtange of the fact that there
are a lot of great self-hosted services out there.
Wherever possible I opted to run my own service.
I needed to find replacements for my most used services and settled on the
The big one. I didn’t actually stop using Android (that’d be madness), but
I got away from Google’s distribution of it and went for LineageOS which you
can get with all of the Google stuff stripped out of it.
Now I use F-Droid for apps, or the Yalp Store for anything that isn’t on
F-Droid. And for apps that require some of Google’s services, there’s microG.
I’m not a purist in that regard.
Whenever I’ve been interested in blogging, I’ve always defaulted to something
like WordPress or Ghost, simply because I’ve never been into learning HTML or
CSS. But I also didn’t like the weight that comes along with a full blogging
platform (even if Ghost is relatively lightweight).
Then I discovered the wonders of a static site generator and chose Hugo because
it seemed simplest. What you’re looking at is the result of my efforts.
Not a lot to say here. It’s the heaviest of everything I’m running with the
Docker container somewhere around 1.5GB which is crazy. It’s hooked into
Nextcloud so I can edit documents from within my web browser.
I wish I’d learned about this a lot sooner. It’s pretty amazing stuff. There’s a
web interface, mobile app, and a desktop client. I’m also able to run DAVdroid
on my phone which syncs my phone’s contacts and calendar with Nextcloud. There
is also a Notes app which effectively replaces Google Keep (although it isn’t
I don’t have any problem with Gitlab or Github, but I figured that if I’m going
to self-host a bunch of stuff, why not self-host code repositories also? Gitea
is very light and simple. You can run your own version of Gitlab, but the
system requirements are ridiculous.
Running your own e-mail server is totally possible but a lot more effort than
I care to put in (and making a mistake means possibly not getting important
e-mails), so I opted for ProtonMail instead. If you pay for Plus, you can
hook up your domain name to their mail service.
YNAB is great and all, but overkill for what I was looking for. They focused
a lot on directly importing transactions from your banks while I prefer to
do it manually (and not give a third party my banking credentials), so I
felt like I was paying for something I only used a small piece of (tracking
Firefly III does exactly what I need for free: log transactions and view
Memory and Disk Space
Memory usage per container (idle):
NAME | MEM USAGE
collabora | 429.70 MB
firefly | 141.70 MB
nextcloud | 121.60 MB
nextcloud-db | 112.20 MB
firefly-db | 99.26 MB
gitea-db | 95.91 MB
gitea | 72.33 MB
letsencrypt | 8.68 MB
nginx | 4.09 MB
docker-gen | 2.75 MB
blog | 1.97 MB
TOTAL: | 1.06GB
Size of each Docker image on disk:
IMAGE | SIZE
collabora | 1.56 GB
firefly | 623 MB
nextcloud | 569 MB
mariadb | 366 MB
gitea | 86 MB
nginx | 18 MB
TOTAL: | 3.18GB
To accomodate those requirements (primarily memory), my DigitalOcean droplet is
1CPU with 2GB of memory and a 25GB Disk, which is $10 per month. I also have
a 25GB volume primarily for Nextcloud files and Gitea repositories, which is
$2.50 per month. So that’s $12.50 per month.
ProtonMail Plus is $48/yr.
The domain name is $10/yr.
SERVICE | PRICE (PER YEAR)
DigitalOcean | $150
ProtonMail | $48
Domain Name | $10
TOTAL: | $208 Per Year
Is that cheap? Worth it? Maybe. It depends on your priorities and your needs.
You could make it cheaper by only paying for 1GB of memory with DigitalOcean and
ditching Collabora. And/or make do with the 25GB of storage and not buy an
You could also ditch DigitalOcean entirely and run your own server out of your house,
but you’d need to do some calculations on the initial cost of the computer and
For me, I’d rather not have a computer running 24/7 in my house. But I may end up
ditching Collabora so I can go back to 1GB of memory and save $60 a year. Also,
ditching YNAB in favor of Firefly III saved me $50 a year alone. But you could
also make do with just a simple spreadsheet.
Overall, I’m happy and won’t be looking back. Not only am I in control of my
own data (assuming I can trust DigitalOcean and the security of these apps),
but I learned a lot about Docker, HTML, and CSS, which are good things to know.