this post was submitted on 17 Jan 2025
71 points (97.3% liked)

Selfhosted

41128 readers
998 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 2 years ago
MODERATORS
 

For this new year, I’d like to learn the skills necessary to self host. Specifically, I would like to eventually be able to self host Nextcloud, Jellyfin and possibly my email server too.

I've have a basic level understanding of Python and Kotlin. Now I'm in the process of learning Linux through a virtual machine because I know Linux is better suited for self hosting.

Should I stick with Python? Or is JavaScript (or maybe Ruby) better suited for that purpose? I'm more than happy to learn a new language, but I'm unsure on which is better suited.

And if you could start again in your self hosting journey, what would you do differently? :)

EDIT: I wasn't expecting all these wonderful replies. You're all very kind people to share so much with me :)

The consensus seems to be that hosting your own email server might be a lot, so I might leave that as future project. But for Nextcloud and Jellyfin I saw a lot of great tips! I forgot to mention that ideally I would like to have Nextcloud available for multiple users (ie. family memebers) so indeed learning some basic networking/firewalling seems the bare minimum.

I also promise that I will carefully read the manuals!

(page 2) 12 comments
sorted by: hot top controversial new old
[–] just_another_person 3 points 18 hours ago (3 children)

No special knowledge needed except the very basic ability to understand and run commands from documentation.

[–] habitualTartare 2 points 17 hours ago (1 children)

Setting up jellyfin, I used docker on debian, and an old Quadro card. What could possibly go wrong?

Turns out that week the Nvidia drivers got a faulty update pushed to debian stable and caused an error with getting the GPU to work in any container. I could either wait a week or pull the simple fix from testing. So impatiently I pulled it from testing.

[–] [email protected] 1 points 13 hours ago

Why didn't you do a rollback?

[–] iopq 2 points 17 hours ago (1 children)

It really depends. I actually needed to learn a bit about networking to be able to host multiple things on nginx on the same port. Internally they run on different ports, but they can get routed by the host name

load more comments (1 replies)
load more comments (1 replies)
[–] [email protected] 0 points 14 hours ago* (last edited 14 hours ago) (2 children)

If you have a VM, there is no need for docker. Start by installing ssh. Enable public key auth. Disable password authentication. Set up fail2ban with ssh. Set up ufw. Set up nextcloud. Avoid hosting your own mail, that's another level of complexity. If you really need it, try mailcow.

If you have all that and didn't touch a GUI on your way, you're good to go.

load more comments (2 replies)
load more comments
view more: ‹ prev next ›