I have a Pixel 8… a PC with Linux Mint. How do I learn to “self host”. Mainly for photo storage backup. Where do I start? I know nothing, absolutely nothing
This was just posted https://itsfoss.com/self-hosting-starting-projects/
@portnull @Toasted_Breakfast I don’t think these self hosting articles are that useful and much more than a list of applications. They send people off in the wrong direction.
They only answer that ‘what do I want/could I do’ but they don’t answer the ‘what device do I want to do it on’ and ‘where do I want to be able to do it’ questions - They also don’t answer the ‘what do I need to learn to do it’ - what do I need to protect my data?
And frankly I think they take the wrong approach when there are now more comprehensive solutions that could put selfhosters in a better position and get them thinking about questions like 'What happens when the cheap laptop I’m running this on dies/house catches fire/ How can I stop someone get into my application - How do I not forget all these passwords? - Sure they are great to play around with but would you really recommend anyone start ouy by spinning up Nextcloud and then putting stuff on it they really don’t want to lose?
Sorry that might sound grumpy… I don’t mean it to be. Its great that people are being encouraged to try - but they should also be really early on talking about things like ‘doing things with a friend or a group of similarly interested people’ (I know that sound weird - but you need offsite backup people … and someone to be able to step in of something happens to you … or things go wrong. (It takes a village to raise a baby)
Going by your comments, I think you need to know a few basics before you get into people’s suggestions for actual services. Start with this: more or less, “the cloud” is just someone else’s computer. It’s bigger, the connection is faster, etc., but the services you use most likely run on a Linux computer much like the one you already have.
For experimenting with the topic, it would be good to have another computer that you can mess around with and not worry about having a usable machine. If you can cobble together a desktop from old parts it will be enough to start the learning process.
Buy a PC, install debian, install tailscale, install immich. Done.
Get yourself the cheapest n150 box you can, the 4 port versions are good im case you decise to upgade and convert it to a fw later. Get a 4tb 2.5 ssd if you afford it and a chewp dual or more jbod external for safe backups.
Every year upgrade and stick to proxmox and opnsnese untill/unless you have reason otherwise.
why sdd for storage? 4 tb hd costs less than half of an ssd. even for the system it’s enough, if you can stomach a 20 sec boot instead of 5
I keep seeing similar pricing for both, 110-130€. Could you please share where i might find cheaper?
oh okay if you can get a 4tb ssd for 130€ that’s a good deal, if it’s not a scam
KDE connect and/or Synching/Syncthing-fork.
I don’t think you’re ready for self-hosting, but getting these installed and sorted out will help you move along that path, plus it will meet your needs in the mean time.
Bit, as others have suggested, get familiar with networking a bit.
You might want to get a raspberry pi or cheap SBC with a good amount of memory and disk space, and fuck around for a bit, trying some things.
Agreed. Syncthing is the first thing everybody should have. Takes care of some many things already that half the (self-)hosting is not even necessary anymore.
If you really want to self host but you aren’t interested in a lot of dirty work then you can get a Synology and use Synology photos, right next to Synology drive ( Google Drive substitute) and everything else substitute.
It “just works” and it handles all of the updates/security for me. Even includes secure enough access via quickconnect so I can connect over the Internet.
That said it costs more than diy, and I have hardware limits. I can’t just get 2 more drives and hook them up. I have a 2 bay Synology so I would need a whole new unit to get 2 more bays. It’s better for me to just buy bigger drives.
Software wise - if it isn’t in the Anyone App Store then you can just use docker so it covers everything.
But as someone who is already busy enough with a full time tech job and 2 kids. This solution works for me
This is kind of an info dump and I havent fully gone through to verify everything but this is a guide from a trusted ytber explaining step by step how he setup and managed his self hosting environment.
For a more bite sized entry into self hosting just join the community (like you are now) and learn about the different services people are hosting and when one sounds good then look into how to set it up and ask questions along the way.
@Fizz @Toasted_Breakfast I had a look at a few guides. They all come with a few assumptions and get into details but I was thinking that any guide needs to cover:
options:
Infrastructure - e.g. VPS/bare metal at home ,
Applications - nextcloud, media server, home automation etc.
Middleware - identity/authentication/ reverse proxy, backup, email, Patching/updates , xdav and other support tools for mobile,
Networking - home network, subnets, vpn/tailscale, firewall, port forwarding, static ips., ipv6
Judging from your comments, you seem to be lacking some basic knowledge and skills to get started.
None of the comments here are useful without getting those up to speed.
You definitely might want to start of looking into networking: how do computers connect to each other and the internet.
Since you’re using Linux Mint, I do assume you have some basic knowledge of using the terminal and basic commands.
Next you might want to learn Docker, which is useful when learning self-hosting, as most solutions will have an option to use that.
Ooof, yeah reading their comments, I agree.
OP, if you’re reading this, start even smaller. Not everything has to be right in your house.
I been deploying web apps since 2010, and I jumped right into self hosting during the pandemic and it was a massive headache or challenges I wasn’t prepared to face or maintain.
I gave up (for now) and just used open-source apps and AWS, because I needed availability. And every few months, I do a bit more to one day move everything to pure self hosting.
Do you have any favorite starting points for Docker? I’m still learning myself.
@Hawk @Toasted_Breakfast I get where the thought is coming from - Playing around with a cheap #OpenWRT router can be a way of getting an idea of routing and networking. - They have a gui and config files you can edit directly. You can figure out things like a #firewall #portforwarding - That kind of thing.
It doesn’t get as easier as this (for photo storage backup):
https://docs.immich.app/overview/quick-start/
It has step by step guide, using very simple commands you can just copy and paste for the most part.
Since you are using linux, and you are in the fediverse I do assume you can move your way around setting up Immich with that guide.
How his looks like exactly what I needed! Thanks. Is this “self hosting”?
Think of self-hosting as - instead of depending on cloud services from other entities (google/apple/whoever), you host those services yourself by running them on your own pc or maybe your secondary pc running 24/7 (usually locally, in your own home).
Some common services might be automatic photo backup and storage (like immich), or running an adblocker for your home network, or streaming movie/music from your hard drive to your phone/TV (like jellyfin).
I started self-hosting on my desktop first with Plex and the *arr stack, before buying a mini-PC and spinning up these apps on Proxmox.
I’m surprised I had to go this far to find immich. I 100% recommend it, and yes it’s selfhosting if you run it yourself. Still selfhosted even if you use a VPS as long as you control and administer it.
For hardware, I actually recommend against raspberry pis these days. You can get a cheap mini PC that’s much more performant and better supported for the same price as a pi plus the accessories (SD card, case, power supply, etc). Use Debian or Ubuntu as host and follow the guide on the github for installation.
To be fair until very recently immich would have been a horrible recommendation for someone that is completely new to self hosting because almost every other update was a breaking change that required you to carefully read before updating.
And even if you tried if your installation was old enough eventually your compose file would Drift Away from what main line was and you basically had to seek the help of the developers to fix it up.
It only just recently released what is supposed to be the stable line that should hopefully no longer need these large breaking changes
I set up the server following the introduction instructions, but what I don’t get is I have to be connected to the same Wi-Fi or Internet I mean in order to connect to it. What is the point of that? How do I make it so things just upload from my phone to the server?
You need to open a port on your router for it to be accessible from the outside world (example your phone on LTE or a different wifi) , this is not a limitation of the software but a security feature of your router
@LordKitsuna @Toasted_Breakfast I wouldn’t recommend this as a starting point. Rather I would go down the route of starting to learn about VPNs and DMZs - Open ports on networks can end badly.
DMZs on consumer hardware aren’t a good idea either. Recently checked my DSL router out of curiosity after reading a post about it . Seems what consumer hardware often does in a DMZ is dropping the firewall to the outside completely for the affected devices while not isolating the rest of the network from them.
Not even looking into VPNs in general. He can start by looking into tailscale specifically. But I agree opening ports should be a NO GO, especially for beginners.
So I successfully set it up, but I don’t understand why I have to be hooked onto the same internet in order for it to work. What kind of crap server is that? How on earth do I connect to it or set up a connection so I can access it from anywhere?
What kind of crap server is that? How on earth do I connect to it or set up a connection so I can access it from anywhere?
The nature of self hosting is that you’re doing the things yourself. With a service like Google photos you don’t even think about this stuff because someone else manages and figured the things out already for you.
This is good, lets you see if you are up for it when things don’t work out of the box exactly like you wanted. If it’s too much then I suggest you use a managed service.
Otherwise, then I suggest you begin with checking out tailscale. Tailscale is not exactly a selfhosted service but it’s the easiest path for SECURE remote access I can think of.
But as the other reply said, do you really need remote access? I mean, you can simply do the backups when you are connected to your home network…
Your right about the last part but then it begs to ask… Why set up this service or server when I can just use a Good Old USB cable? 😒
I also knew nothing about self hosting, but wanted to move away from Google photos, and that eventually led me towards self-hosting and immich.
Most people recommend using something like Tailscale so you can access your server from anywhere. That wouldn’t necessarily work for me, because I wanted to be able to share links to pics and videos with friends/family who wouldnt be a part of my Tailscale network.
I ended up purchasing a cheap domain, and using cloudflare to allow me to share links broadly. (Because my family deserves better quality videos of my adorable children than the compressed crap that comes through in a group message between iOS and android. I have tried SO hard to convince them to move our group chat do a different platform but I have failed.). It’s probably ill-advised for somebody who knows as little as I do to go this route, but I’m filled with the un-earned confidence of a middle-aged white man.
Being tethered to USB each time even if you want to copy or view 1 photo will get incredibly annoying.
Immich will also give you lots of useful features like albums, tags, filtering, face detection (local), and supports multiple devices and users (do you have enough USB ports? :p) . These small features will turn more and more useful as your library grows.
You can first keep Immich working in your local network while you figure out tailscale, flexibility is a strong suit here.
How do I learn
…you say in your OP. Yet instead of learning, you complain “what kind of crap server is that”. You don’t learn by thinking anything is the softwares fault.
It is perfectly normal, that you can reach the server IN your home network only when you are connected TO your home network. That is a security feature by your router and thus by design. But in order to learn how to open it up, you would need to be willing to learn. About security, about networking, about how to find servers, i.e. the internet and more.
But for the beginning: how is that even bad or crap? Like, it saves your photos when you come home and connect to wifi. Awesome, congrats!
@net00 @Toasted_Breakfast Now you need to start getting some knowledge around routing and networking. Have a look at #Wireguard or #Tailscale to securely access your network remotely. Remember its a journey … you are going to learn things bit by bit.
Documentation, take notes on what you setup, ports opened, accounts created. This will be very valuable when you envitally get services setup and forget about them.
I’m curious if you have recommendations on how to structure or keep the notes. I find that I struggle reading technical documentation or how to structure notes so they’re easy to refer to. Have any tips or guides you can share?
Documentation, take notes on what you setup, ports opened, accounts created. This will be very valuable when you envitally get services setup and forget about them.
@Toasted_Breakfast@lemmy.today OP this is advice you can take and apply throughout your selfhosting journey. This advice is worth it’s weight in gold right here. I lean heavily on my notes and they are prolific. My memory is shit for a lot of reasons including medical, and my notes have saved my ass many times.
Awesome advice!
I would personally recommend starting with a Pi-hole. It’s easy to set up and provides an immediate improvement to your whole internet experience.
Try to follow the official guide or use a Docker container.
But pihole is not a photo backup
But a great start to get into selfhosting. What’s an IP? What is a DNS? How do I connect to via ssh? What’s the job of DHCP? Pretty basic stuff, your learning in the process.
Yup. You got to start with the tedious and the boring before you get to the glamorous where your friends ‘ooo’ and ‘ahh’ about your set up.
Buy used enterprise hardware for cheap, install Unraid, dip your toes in… Then if you enjoy tinkering, evolve from there.
Unraid does everything I want so I’ve kinda plateaued for the moment.
Agreed to buy used hardware but be aware of power draw (and noise sometimes)
Removed by mod
Thank you Mr ChatGPT
The mods have been busy today
@Toasted_Breakfast How aboit starting with something like #yunohost
I can confirm that Yunhost is one of the best ways to start learning self-hosting. The only “bad thing” I can say is that sometimes it’s so easy that you actually don’t learn any thing.
The only “bad thing” I can say is that sometimes it’s so easy that you actually don’t learn any thing.
I learned a lot. Definitely a whole lot less than if I had done it “from scratch”. But also, I never would have done that. I tried and failed several times.
Another +1 for YUNOhost. I went from zero experience self-hosting to having my own email, fediverse instance, file server and several websites on a VPS. I would never have had the patience to figure this out without it.
So, for all you ^5’ing Yunohost, I have a question that’s bothered me for years. Like I said, their app catalog beats anything else in it’s category, but they also list apps that don’t work…separately of course and labeled as such. I’ve always wondered why. Is it in hopes that someone will fix them? …or what?
+1 for Yunohost. Easy to deploy, and their app catalog is substantial.
One option you could explore since you didn’t list any other equipment, is a cheap VPS. You can pick one up at LowEndBox for cheap. I have a couple VPS test servers that run about $25 a year. That would help you get your feet wet a bit. You could learn how to deploy Linux server along with the standard defense systems in place like Fail2Ban, UFW, etc.
Or even a small NUC or RPi.
Agreed. For actual backup, I’d put it in the cloud.
Really, I’d run immich locally, and then back that up to the cloud, but that depends on how valuable the data really is to you.
Really, I’d run immich locally,
There ya go. Encrypted of course. That way OP can still learn to stand up a proper server and defenses before it almost instantaneously attracts the attention of literally any or all of the 1.5 billion known, active, automated bot accounts at this moment +/- show up at your port 22 doorstep and helping themselves to your resources.
The very first linux server I stood up on a vps, was taken over quite quickly. So, that spurred me on to read tutorials, scour chans and forums, just looking for guidance and knowledge. Now, I understand a lot more that I did way back when so it’s gotten easier. Not that I house a vast trove of wisdom or knowledge…pffffttt…that does not exist. I learn something new all the time. That’s one of the aspects I really love about self hosting.
Of course. Personally I wouldn’t expose anything to the Internet but a VPN service.












