I dunno why but I’m worried that casaos is holding me back from doing greater things I guess? I’m pretty new to self hosting and I discovered casaos from a Minecraft server setup tutorial of all things and it’s been great for me so far and does pretty much everything I need it to do, but I feel like I don’t really have a full understanding of what I can do outside of it, and I don’t really hear many people talk about casaos so I’m like worried it’s just not very good I guess? I’m just looking for ways to improve really.
For reference I just use my server for Minecraft on the occasion, a self hosted obsidian live sync, adguard, and in the future plan on hosting nextcloud. Casaos seems great for that and maybe it’s perfectly fine but I’d just be interested in being more knowledgeable I guess, and aware of any ways to improve.
Was the first car you drove a Lamborghini or an f1 car? K.I.S.S. Is definitely a good thing when learning. If it works and does what you need it to, then use it till you learned how it works and want to try the next challenge.
I say spin up Proxmox, a Debian LXC, install portainer on that container, and then you have something way more customizable. You’ll learn a lot more that way.
Seconded, but dockge over portainer.
As far as I know, CasaOS (same as Cockpit) is installed on top of a default OS install, so you could always access the OS directly to install/configure things outside of it, if the need arises.
I would not say you would be held back by it, if it does what you need. And for what I can see online, you can install any docker container even if it’s not on the default catalog of CasaOS, or access the OS.
If you want to grow your knowledge of how things work, or how to deploy services without CasaOS, you can always do so in parallel of using CasaOS, so I don’t see where the issue could be.
I don’t see any truenas or unRAID, I think they would be a step up in complexity before going to proxmox imo
As some said, it’s fine!
I have it installed on my raspberry pi to run Jellyfin and a few other apps, and it’s been mostly stable. However I’ve had the same thoughts as you, so I can confirm that you won’t be able to learn as much with it.
Some of my other needs are hosted on a VPS without CasaOS, and that’s where I was able to learn most of what I know. It’s also where I spent the most time configuring and fixing incompatibilities.
I’d suggest that you keep CasaOS for the things you want to depend on, and start learning on another system without CasaOS by installing apps you’re interested to try out. This way you’ll learn about reverse proxies, certificates, docker, etc, without being afraid to mess up your current setup.
If you want to learn more, then you will need to move away from casa. Casa is pretty much just a collection of custom docker images that play well together and with their interface. You could grab an old computer, install Linux, and do more but you would expend more time and effort.
Stop worrying about stuff like this.
Does it do what you need?
Does it fail where you need it?
Then start asking that question. Don’t be OCD about it. It’s an automation suite. Chill.
Disagree. There should be a few more questions as well:
- if development stops, what are my alternatives and how hard is the migration process?
- how responsive are the devs to patching vulnerabilities?
- if I need more software down the line, how do I get it? What if it’s not in the repos?
- how is the documentation and community? If something breaks, how likely am I to find a fix?
Look beyond initial setup and think about what happens after a couple years.
Agreed. Only two reasons to consider this question:
- Do I want to do something it can’t?
- Do I just want to learn something new?
Docker compose is way more powerful. You don’t need a GUI just a text editor like nano or vim.
Serious question: last I looked at casaOS (because I liked the hardware), they had SSH open and accessible to default passwords by default. This scared me off hard.
Is this still a thing/are there other glaring security holes?
I don’t know if they changed it by now, but unRAID was the same when I tested it back in 2019. I wish they did things differently but both are products designed to be deployed and ran by hobbyists in a local network, so it makes somewhat sense.
I could get the “default” to facilitate setup, but as far as I’m concerned it’s seriously fucked not to have the first step of your script be replacing it with the user’s own choices. It’s really hard for me to trust the security as a whole of a project that does that by default, especially because it’s intended to be for inexperienced users and there was no indication during the setup process or other included information that that was the case.
Just looking at their website makes me not want to use it because it doesn’t give any details as to what it actually is.
Yeah, what is it based on? Debian? Fedora? Something custom?
My systems use openSUSE, and I could switch to Fedora or Debian without much issue if openSUSE dies.
If it’s not clear, I don’t use it. What happens if there’s a critical vulnerability or the project stalls? How would I migrate my stuff to something else? What if I need some wonky software not in the repos?
CasaOS is fine, but the downside of tools like it is you don’t really know what’s going on under the hood, so if/when something breaks it may be really hard to fix.
But if it works for you I don’t see a reason to change. Just make sure you’ve got reliable backups following the 3-2-1 rule.
What exactly is the 321 rule?
It’s basically the minimum level of redundancy you should have for storing important data.
3 total copies, 2 different types of storage, 1 of them offsite.
Backups also need to be tested like twice a year or so, do a restore as a test (full if you can, but partial is something at least) and make sure the data is what you expect.
3 copies, 2 media, 1 off-site
If that’s what you are doing there is definitely heaps more you can do with casaOS.
The apps are basically docker made easy and it has a lot of connections that are hidden behind ease of use menus.
What do you think you are missing out of aside from more explicit controls?
From what I understand: CasaOS is simply an abstraction layer and takes away a lot of the manual work.
I agree with you that this shows down learning quite a bit.
I see three ways forward for you:
a) switch to a Linux base system, Debian, arch, nixos, whatever resonates and set up everything from scratch. High learning curve but no more hidden things.
b) same as a but as a separate setup. This is what I would recommend if you have the time and cash. Replicate what’s already working and compare.
c) figure out how to do things manually within the CasaOS framework. Can’t help you there though :)
May I suggest you have a look at cosmos cloud? It’s comparable to casaOS from a usability standpoint but it is more secure and has much more features like integrated Auth-Proxy.
Having a solution that works for you is never a bad thing.
Now it comes down to what you want to archive: Do you want something that just works? Great, you’re done - now go on and do some other things that you like, that’s perfectly fine. Or do you want to learn more about servers, virtualization, linux, networking and selfhosting in general? Then there are a million ways to get started.
I’d suggest to setup a little lab, if you haven’t already. Install Proxmox on your server and run CasaOS inside a virtual machine. Now you’ve learned about hypervisors and virtual machines. Afterwards you could create a second virtual machine to play around - maybe install debian and get used to the linux cli. Install docker manually, run some apps using docker-compose. Now you’re already doing some stuff that CasaOS does under the hood.
The possibilities are endless, the rabbit hole is deep. It can be a lot of fun, but don’t force youself to go down there if you don’t want to.
I second this - virtualization is the easiest way to branch out and try new things. You can keep the working system you already have, and also experiment with other systems.
A further advantage is that you can run services in separate VMs, which helps if you need isolated contexts for security, privacy, or stability reasons. And, if you break something while you’re learning you can just delete that VM and start over without affecting your other working services.