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.
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!
also Ubuntu will add more complexity to things, Debian will cover most of what you need.
How so?
Took maybe 5 minutes total to install paperless-ngx in docker on a Debian vm. No hassles, no headaches.
The problem is trying to install tools built for Linux on Windows.
Windows is just not ready for this stuff. Most of this stuff is built for Linux. Linux is THE server OS. And windows is painful for developers too, so there's less solutions for it.
You'll be a lot better off with Linux for self hosting.
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
I respect your opinion, but I'll pass
Well then maybe you should also pass on making generalizations about selfhosting?
To put it another way, you're having difficulty staying motivated to ride your bicycle with square wheels.
"You should try using round wheels."
"No."
Have you considered Docker?
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.
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 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!
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.
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.
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
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.
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.
You nailed it, the problem is the problem with having to troubleshoot by yourself as a newbie. Once might not be an issue, but every step feels like a new instance of a repeat problem. Thanks for the encouragement
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)
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
Proxmox with alpine containers or Unraid are both painless
Motivation is a luxury
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
I just fucked up my docker. Now I get to set everything up again for the 5th or 6th time.