I know linux isn't for everyone, but self hosting on windows is self-inflicted punishment. It's just not the right platform. Sure it's doable, but it's death by a thousand papercuts.
also Ubuntu will add more complexity to things, Debian will cover most of what you need.
I wish I knew this before I started.
But my headless Ubuntu is working now, so I am not changing it.
Don't rush it. You will have plenty of opportunities to change into Debian when your Ubuntu stops working.
Be me whose server is on Ubuntu 18.04 and needs upgrading to get Bluetooth into home assistant 😭
For what it's worth, I usually install Ubuntu Server instead of Debian because it comes with a few more things out-of-the-box that I would install anyway. I have several installations of 22.04 that have been upgraded since 16.04 and they work no problem. (I also have a few Debian installations working similarly well.)
Absolutely do not do this on windows. It makes everything a nightmare. Bare metal install ubuntu server and install docker/portainer. Its 5 copy pasted commands and you never have to look at the terminal ever again if you don't want to.
My point: if you’re getting started selfhosting you have to embrace and accept the self-inflicted punishment. Good luck everybody, I don’t know if I can keep choosing to get disappointed.
I would say that your self inflicted punishment is using windows. Switch to debian and thank me in six months
You must imagine selfhosters happy.
Nice. Sad, but nice
I will be one of many saying this: if you want to self-host you need to learn Linux. It can be done, but this is not like taking a pottery class and you don't really get to show anyone, the only people who will understand are people who are also able to do what you do. It's rewarding on many levels, but pleasure and sociality are not among those rewards. :>
None of this should have been a hassle, to be honest. Even if you were taking the hard route there.
Instead of this post why not try asking for help with what you're stuck on?
I recently ditched Portainer entirely - it looks good, but when debugging anything it is really not helpful, often getting in the way. And if it runs on the first try I don't need a web interface.
My tips:
- Run self hosted things on Linux and open their webpages on Windows if you really want or need to keep using Win.
- Prefer
docker compose
"stacks" over docker directly or native installs. Personally, I just use 4 sub-commands for pretty much everything I do:up
,down
,pull
andlogs
. You (probably) don't need Portainer. - If after 1. making sure the
docker-compose.yaml
is right, 2. setting up the.env
file if present, and 3. following the instructions in their README; a container stack doesn't run after 2 or 3 attempts: copy the error message and search their GitHub issues - chances are someone else also faced that problem. If you can't find anything similar, open a new issue.
I thought this too, I hated docker because it was supposed to be the solution of "works on my machine" and the only thing that did for me was force me to learn more configurations besides the configuration of the service you wanted to install.
And as you said, plus the hassle of having to run some Linux distro.
But little by little I had to get deeper into docker and Linux, mainly because of my work, and now I can easily deploy any service in the VPS I have or test it with WSL. I even started dockerizing some of my own flows like building and deploying my own projects with docker.
Believe me, it's worth all the time to learn docker and linux.
Start small, few lines or keywords each day, you won't have everything you want to deploy in a day or two if you don't already know all the technologies.
And remember, if you don't easily find something you can always come to ask in a post and we can try to help you!
Doing anything new will require work/pain the first few times. It is just part of the learning process. If that sudden jolt of happiness when you get it working can outweigh the depression caused by hours of trudging through the setup/failures, you'll constantly be improving. Like all things, give it a fair shot and if it brings you more pain than pleasure, stop doing it.
There are now a lot of people who are making a living from providing self-hosted services to others for small fees. Even if you decide to not self-host, there are multiple ways to get the lion's share of benefits. Its not a binary choice between Google and self-hosting.
if it helps, here is my setup from bare metal to 30+ services. https://github.com/simone-viozzi/my-server
including off-site encrypted backups
of course, i wrote this for me, so most stuffs are written like garbage, but fell free to open an issue, and i will fix them
Motivation is a luxury
Been there, done that. Start with something frendlier. I personally love CasaOS (its just 1 command you need to copy-paste on a fresh ubuntu server install)
Maybe it's hard at the beginning but as you keep doing it becomes easier. If you feel overwhelmed take a break for a few days and try again later. I think we all have been there and hit a wall. Self host, open source and Linux communities are friendly you can ask for help and find someone willing to help you, so don't be afraid to ask for help (as I was before). Just take small steps.
Don't give up. Have fun.
Proxmox with alpine containers or Unraid are both painless
I get where you're coming from, really. I've been disappointed by Linux for years with the learning curve and random errors that no one can help with. I'd take a long break from anything server related and then once you think your ready to come back, go watch some videos that give you inspiration like Techno Tim. Try to make a game plan and stick to it. Use standard stuff like Debian and Proxmox for software and to get a head start try this. Wish you all the best mate.
People can help you, but there is a way to ask, and learning how to ask is part of learning the OS. We are fascinated by problems actually.
The problem is that people come and say things like "I tried to setup a fleegbat server and it doesn't work!" and so for the helper it becomes a process of pulling the information out of the asker in a long and painful process of interaction and we just move on. Users who say things like "here is the error message I'm getting when I try to start up my fleegbo server, anyone understand this?" get way better help.
Those who really want to learn it come to understand these things, those who just want to do something neat and not work their ass off will complain that it's too hard.
Those who do the work are rewarded in many ways. I drove a dump truck ten years ago, now I make twice what I used to, working with people who aren't racist sacks of shit. They were my motivator to learn, I was tired of being among pigs every day.
It was a pain for me and it still is sometimes, but I like it. I found myself enjoying thinkering more than actual services I host hehe. I think its rewarding, but yeah it can be frustrating. I personaly know exactly 0 people that heard about docker, so dont feel bad about being lost and failing that attempt. If you dont want to manage a server you dont have to give up on linux completely. I started using POPOS! few months ago and its more friendly than windows IMO, it just works! Good luck mate
I just fucked up my docker. Now I get to set everything up again for the 5th or 6th time.
That’s part of the cost benefit equation for self hosted vs cloud hosted.
I got tired of dealing with maintenance on my VPS and on my on-prem hardware and so now I pretty much just do SaaS or run front ends that connect to public cloud backends
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: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
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.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
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!