Ask HN: Personal Journaling with Text Files: Self-Host Git or Use GitHub?

2 points by tester457 ↗ HN
I keep a journal with Obsidian.md, it's a folder of [[linked]] markdown files.

I'm considering self-hosting a git server such as such as github.com/charmbracelet/soft-serve for it, but I'm not sure if it's a good idea.

I'm wondering what the security risks are of self-hosting a Git server for this, and if it's more risky to use something like a private GitHub repo instead.

If I do decide to self-host, I'm planning to use an old laptop and only whitelist my IP addresses.

Thanks in advance for any insights!

Update: main goals are syncing the journal between devices, and privacy. Unsure on trusting github for privacy.

4 comments

[ 4.2 ms ] story [ 16.5 ms ] thread
What is your goal? Are you trying to self-host to publicly share your journal?
Thanks for asking.

My goal is to self host to have syncing between devices. Version control is nice too because part of the journal is a knowledge base that changes often.

I want to keep it private forever that's why I'm considering self hosting.

I would choose github for this in normal circumstances but I am concerned one day they might use private repos for training data.

If privacy is a big concern you could try using an encrypted disk image/folder inside Dropbox, OneDrive, iCloud Drive, or similar. Then put your data inside that.

That is probably less overall headache than self-hosting just about anything. It gives you the sync reliability of something like Dropbox while securing your data so they can't see it.

If you are using Macs then an encrypted disk image is secure and free. But it isn't supported on iOS or Android or any OS that's not macOS.

There's also third-party tools like Cryptomator or Boxcryptor that will do the encryption. If you need broader platform support check them out.

Good luck!

If privacy is a main goal, you generally can't get any more private than self-hosting. Do you plan on syncing while away from your home network? That would complicate things greatly simply due to the fact that you'd need to expose your self-hosted git instance to the Internet.

If you're fine with only syncing on your home network, using your old laptop, I don't really see any real security risks.

If you don't want to expose git directly, you can always expose a VPN server (wireguard?) to the Internet. This is the strategy I use. Then you can VPN into your home network anywhere you have an Internet connection, while still remaining relatively secure.