Selfhosted
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:
-
Be civil.
-
No spam.
-
Posts are to be related to self-hosting.
-
Don't duplicate the full text of your blog or readme if you're providing a link.
-
Submission headline should match the article title.
-
No trolling.
-
Promotion posts require active participation, with an account that is at least 30 days old. F/LOSS without a paywall has exceptions, with requirements. See the rules link for details. Tags [CBH] or [AIP] are required, see the links in Rule 8 for details.
-
AI-related discussions and AI-involved promotional posts have additional requirements for tagging, as noted in Rule 7 and the AI & Promotional Post Expanded Rules post, and find example disclosures here.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
view the rest of the comments
To your specific questions:
Reverse proxies let you serve multiple apps from one server, encrypt your traffic and automate updates of encryption certificates. I use Apache (virtual hosts, mod_md) for this.
Modern web apps have many constantly shifting dependencies and don't work closely with distributions on packaging them, so they have to be updated separately from the base system. They might also need different versions of these dependencies, and multiple instances of one dependency (e.g. database). Containers are one way to achieve that, and also ease backups, monitoring of individual apps, and installing an application in exact same way on development and testing machines.
To expose ports 22 (ssh), 80 (http) and 443 (https) to world, forward them to your server.
In the DNS settings for your domain, point "A" record to your home IP. That's if you rent a static IP. If you don't, things will be more complicated, research on your own.
Bare minimum: set up daily backups of container volumes and reverse proxy configuration, same for updates of base system and containers, and turn off SSH password login in favor of keys. Test that a backup can be successfully restored in a virtual machine at least once a month.
Op specifically asked for resources for learning and not sparse answers from users.
Come on, man. Did you even read the post.
Where does OP say that they only want resources and no answers at all? Also you sadly misquote me by stripping context, I replied that there's a simple solution (and how specifically to look for it) to one of their questions if one condition if satisfied, and that the problem doesn't have an easy answer otherwise, therefore needing more research. I went out of my way to give OP brief answers and more specific questions for research, like I do for my students, and you make it look like I just wrote RTFM.