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
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?
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.
Start by searching for how to selfhost a photo storage backup. There are multiple ways to do it and the decision depends on your circumstances and preferences, which only you know.
If you are interested in the photo storage then start..... With the storage.
So pick up a nas or something similar, pay a bit more for the super intuitive fancy gui product and the start from there.
Learn what is nas and how to connect to a pc Thne learn how to do the same with your smartphone Then learn a bit about networking Then... Continuous for the hardest itch and try to Scratch it
And if you need support, come back here, check videos and web pages or even chatgpt, for the basic stuff is quite acceptable
Well for starters if you want something more out-of-the box, just buy a NAS. But what woult be better is to buy a Raspberry Pi 5 and add a micro sd with good amount of storage or maybe some additional external storage and install CasaOS(this is basically a easy UI that allows you to self-host mostly without commands) and install Immich within its App Store, and link it up with your phone(on the Immich app).(If you need any more help DM)
Stop freaking out, you can do this. Don't try to build a full server farm on day one. Start small, get something that actually works, then iterate.
Practical path: plug an external HDD into your Linux Mint box and install Syncthing on both the Pixel 8 and the PC. Syncthing is dead simple for backups, it syncs your phone photos to the PC with no cloud, no port forwarding, and it Just Works. Install with apt on Mint, install the Android app on the Pixel, share the camera/DCIM folder, accept the device link. You'll have automatic backups within an hour and you'll actually learn how files move around.
When you're comfortable, add a second copy or offsite backup (cheap VPS, friend's house, or a rotating drive). If you want a web gallery, user accounts, or calendar/email too, then move to Nextcloud or a small NAS OS like OpenMediaVault or TrueNAS SCALE on a dedicated box or a Raspberry Pi. Use Docker if you want portability, and always put HTTPS and a firewall in front if you expose anything to the internet.
Bottom line, stop reading dozens of guides. Do Syncthing + external drive today, then upgrade. You'll learn a lot faster by doing than by overplanning.
i started in january of this year because i upgraded my wife's computer. that gave me an old computer to tinker with.
i recommend getting an old computer, installing an OS (look up thinks like truenas, proxmox, unraid... there are more and they are different; try them all out if you want to see what you like)
then go onto youtube and search for things like " beginner" and you will get a bunch of tips/tricks/tutorials/etc. for starting out with your favorite.
Immich is a fantastic photo backup service that is a replacement for Google Photos both in form and function.
There's a demo at demo.immich.app to see what it looks like and what you can do with it. As far as self hosting stuff goes it's relatively easy to setup. Work through the setup guide and see if you can understand that to get it running.
What it will do is make it available on any devices on your local (WiFi or wired) network. You will need to open a port on the Linux box's firewall, but that step is easy and I can show you how to do that on Mint. Then you'll be able to connect to it from your phone or any other devices (or right from a browser right on the server).
If you have any questions feel free to ask. I have a few things running on a Mint server I have.
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.
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.
First, Syncthing on the PC and Syncthing-Fork. Now you can sync (and anything else) your photo files from phone to PC and vice versa. Congrats, you have photo storage backup.
Second, either a vpn to your home network so you can backup on the road, or Immich (as elsewhere suggested) for your own google photos experience.
Third, whichever of second you didn't choose.
Fourth, get ye an offsite backup (search 3-2-1 backup). rclone is your friend, but encrypt first locally with Cryptomator, then you don't have to trust your storage provider.
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.
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.
Hell, one of the first things you can look into hosting is Obsidian, (or maybe AnyType? I have seen some people recommend it for better sync integration, but I haven’t personally used it), with SyncThing to keep your notes synced across devices.
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?
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.
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
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.
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.
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
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?
...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!
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.
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...
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.
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.
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.
abeorch
in reply to Toasted_Breakfast • •Selfhosted reshared this.
irmadlad
in reply to abeorch • • •Xirup
in reply to abeorch • • •artyom
in reply to Xirup • • •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.
Da Oeuf
in reply to abeorch • • •irmadlad
in reply to Da Oeuf • • •UndergroundGoblin
in reply to Toasted_Breakfast • • •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.
lauha
in reply to UndergroundGoblin • • •UndergroundGoblin
in reply to lauha • • •irmadlad
in reply to UndergroundGoblin • • •HelloRoot
in reply to Toasted_Breakfast • • •thelittleblackbird
in reply to Toasted_Breakfast • • •If you are interested in the photo storage then start..... With the storage.
So pick up a nas or something similar, pay a bit more for the super intuitive fancy gui product and the start from there.
Learn what is nas and how to connect to a pc
Thne learn how to do the same with your smartphone
Then learn a bit about networking
Then... Continuous for the hardest itch and try to Scratch it
And if you need support, come back here, check videos and web pages or even chatgpt, for the basic stuff is quite acceptable
SharkStudios
in reply to Toasted_Breakfast • • •abeorch
in reply to SharkStudios • •Selfhosted reshared this.
irmadlad
in reply to SharkStudios • • •I tried CasaOS. Pretty slick piece of software.
giyila7033
in reply to Toasted_Breakfast • • •Stop freaking out, you can do this. Don't try to build a full server farm on day one. Start small, get something that actually works, then iterate.
Practical path: plug an external HDD into your Linux Mint box and install Syncthing on both the Pixel 8 and the PC. Syncthing is dead simple for backups, it syncs your phone photos to the PC with no cloud, no port forwarding, and it Just Works. Install with apt on Mint, install the Android app on the Pixel, share the camera/DCIM folder, accept the device link. You'll have automatic backups within an hour and you'll actually learn how files move around.
When you're comfortable, add a second copy or offsite backup (cheap VPS, friend's house, or a rotating drive). If you want a web gallery, user accounts, or calendar/email too, then move to Nextcloud or a small NAS OS like OpenMediaVault or TrueNAS SCALE on a dedicated box or a Raspberry Pi. Use Docker if you want portability, and always put HTTPS and a firewall in front if you expose anything to the internet.
Bottom line, stop reading dozens of guides. Do Syncthing + external drive today, then upgrade. You'll learn a lot faster by doing than by overplanning.
turdas
in reply to giyila7033 • • •irmadlad
in reply to turdas • • •AmazingAwesomator
in reply to Toasted_Breakfast • • •i started in january of this year because i upgraded my wife's computer. that gave me an old computer to tinker with.
i recommend getting an old computer, installing an OS (look up thinks like truenas, proxmox, unraid... there are more and they are different; try them all out if you want to see what you like)
then go onto youtube and search for things like " beginner" and you will get a bunch of tips/tricks/tutorials/etc. for starting out with your favorite.
BootLoop
in reply to Toasted_Breakfast • • •Immich is a fantastic photo backup service that is a replacement for Google Photos both in form and function.
There's a demo at demo.immich.app to see what it looks like and what you can do with it. As far as self hosting stuff goes it's relatively easy to setup. Work through the setup guide and see if you can understand that to get it running.
What it will do is make it available on any devices on your local (WiFi or wired) network. You will need to open a port on the Linux box's firewall, but that step is easy and I can show you how to do that on Mint. Then you'll be able to connect to it from your phone or any other devices (or right from a browser right on the server).
If you have any questions feel free to ask. I have a few things running on a Mint server I have.
irmadlad
in reply to Toasted_Breakfast • • •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.
LowEndBox - Featuring the Best Cheap VPS Hosting, Dedicated Server and Hosting Deals Daily Plus Much More
LowEndBoxfrongt
in reply to irmadlad • • •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.
irmadlad
in reply to frongt • • •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.
frongt
in reply to irmadlad • • •MalReynolds
in reply to Toasted_Breakfast • • •Zeroth, consider GrapheneOS on that Pixel.
First, Syncthing on the PC and Syncthing-Fork. Now you can sync (and anything else) your photo files from phone to PC and vice versa. Congrats, you have photo storage backup.
Second, either a vpn to your home network so you can backup on the road, or Immich (as elsewhere suggested) for your own google photos experience.
Third, whichever of second you didn't choose.
Fourth, get ye an offsite backup (search 3-2-1 backup). rclone is your friend, but encrypt first locally with Cryptomator, then you don't have to trust your storage provider.
rnercle
in reply to Toasted_Breakfast • • •for "photo storage backup", you can simply use syncthing.
unless you want to really learn to "self host" that is.
loiakdsf
in reply to rnercle • • •higgsboson
in reply to Toasted_Breakfast • • •pepperprepper
in reply to Toasted_Breakfast • • •irmadlad
in reply to pepperprepper • • •@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!
mic_check_one_two
in reply to pepperprepper • • •Obsidian - Sharpen your thinking
Obsidianfafferlicious
in reply to pepperprepper • • •net00
in reply to Toasted_Breakfast • • •It doesn't get as easier as this (for photo storage backup):
docs.immich.app/overview/quick…
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.
Quick start | Immich
docs.immich.appToasted_Breakfast
in reply to net00 • • •huquad
in reply to Toasted_Breakfast • • •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.
Toasted_Breakfast
in reply to huquad • • •LordKitsuna
in reply to Toasted_Breakfast • • •abeorch
in reply to LordKitsuna • •Selfhosted reshared this.
dieTasse
in reply to abeorch • • •LordKitsuna
in reply to huquad • • •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
TehNomad
in reply to Toasted_Breakfast • • •Toasted_Breakfast
in reply to net00 • • •kossa
in reply to Toasted_Breakfast • • •...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!
abeorch
in reply to Toasted_Breakfast • •Selfhosted reshared this.
net00
in reply to Toasted_Breakfast • • •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...
Tailscale quickstart · Tailscale Docs
TailscaleToasted_Breakfast
in reply to net00 • • •jrubal1462
in reply to Toasted_Breakfast • • •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.
net00
in reply to Toasted_Breakfast • • •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.
workerONE
in reply to Toasted_Breakfast • • •Hawk
in reply to Toasted_Breakfast • • •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.
abeorch
in reply to Hawk • •like this
Areskul likes this.
Selfhosted reshared this.
modus
in reply to Hawk • • •ByteOnBikes
in reply to Hawk • • •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.