I am in the process of setting up a home server, and I am struggling to decide. I have previously used yunohost but in the meantime, freedom box has matured quite a bit. I have also looked at Tipi.
The use case right now is, running a wireguard server and probably some notes of sorts (to be decided). A web GUI for management and updating would be much desired.
Disclaimer: I don’t have too much surplus of energy, due to a hectic life, so I would prefer something easy and without the requirement of docker/kubernettes
- Yunohost: https://yunohost.org/
- Freedombox: http://freedombox.org/
- Tipi: https://runtipi.io/
I will run on a Gigabyte Brix with:
- AMD Ryzen 4300U (4 core)
- 16 maybe 32 GB RAM
- 512GB SSD
I am open to other suggestions.
P.S. I apologise if this has been debated before, but I have not really found anything.
Thank you in advance
EDIT: I have read your recommendations and arguments, and it is noted, I am watching docker tutorials now :)
I see you’re open to Docker now - I’m a huge fan of Dockge which is a nice web GUI for managing your Docker Compose files. I tried just using Docker run commands to set up my containers and it was a painful experience. Tried Portainer for a bit as well, but when I came across Dockge, everything just fell into place. You can copy Docker run commands in there and it will convert to Docker compose as well as easily update, set up stacks with multiple related containers, etc.
I also love Tailscale for remotely accessing my network. This video was really helpful in setting up Tailscale for a few of my Docker containers I want to access remotely.
If you decide you don’t have the time to learn all this, I have used Umbrel in the past and they just released a big update. It has an “app store” that handles setting up your Docker containers for you.
Good luck, it’s a fun journey!
For what reason are you trying to avoid docker? since most projects provide docker images and an example docker-compose.yml it’s very easy to get the application you want running.
Otger projects that do plug and play application setup like yunohost etc. are casaOS and umbrel (both use docker under the hood btw)
I was trying to stick to technologies that I know and that I am comfortable with.
I have watched some docker tutorials, and it just seems more complicated to me. All tutorials requires a terminal and I am trying to avoid having to having an open port 22.
So, that’s the main reasons.
I am trying to avoid having to having an open port 22
If you’re working locally you don’t need an open port.
If you’re on a different machine but on the same network, you don’t need to expose port 22 via your router’s firewall. If you use key-based auth and disable password-based auth then this is even safer.
If you want access remotely, then you still don’t have to expose port 22 as long as you have a vpn set up.
That said, you don’t need to use a terminal to manage your docker containers. I use Portainer to manage all but my core containers - Traefik, Authelia, and Portainer itself - which are all part of a single docker compose file. Portainer stacks accept docker compose files so adding and configuring applications is straightforward.
I’ve configured around 50 apps on my server using Docker Compose with Portainer but have only needed to modify the Dockerfile itself once, and that was because I was trying to do something that the original maintainer didn’t support.
Now, if you’re satisfied with what’s available and with how much you can configure it without using Docker, then it’s fine to avoid it. I’m just trying to say that it’s pretty straightforward if you focus on just understanding the important parts, mainly:
- docker compose
- docker networks
- docker volumes
If you decide to go that route, I recommend TechnoTim’s tutorials on Youtube. I personally found them helpful, at least.
- If you don’t have a surplus of time and energy, self hosting is not for you. You’re taking on administration that normal people effectively contract out
- docker is worth learning and using. It’s one thing to learn, and with that knowledge you can run basically everything. It really does make your life easier
Working with traditional technologies does not take up too much of my time, but all I see in the response, is that what I am planning is wrong. I have taken note of your recommendation for learning Docker. Thank you.