So I have a Synology server that I have a good deal of experience with, so this post will be through that lens.
What I’d like to do is set up a Raspberry Pi exclusively for pirating. So Qbittorrent and Proton VPN to get started, later Radarr, Lidarr, etc. I don’t think I’ll have a problem getting the Pi up and running, but I’d like to run it like my server, tucked away somewhere without a monitor or peripherals.
How do I access it? For my Synology box, I just put in a browser the local ip port 5000 and I have a whole desktop right there. But when I google about how I’d access a Pi, everything points to using SSH. I know a lot of people have Pis set up like this and surely they can’t be administering the whole thing through CLI, right? How do I get a similar setup to my Synology such that I can just get a desktop interface in a browser?
Check out Yunohost for GUI and ease of setup and maintenance
I’ve been a happy user for years
Tailscale is a good option.
Edit: I’m assuming you mean away from home, but if you mean in your local network just use SSH?
Home is fine for now. The problem with SSH is I don’t want to run everything with CLI
To answer your question more specifically, most people set up the pi with docker, using services which have a front end accessible in the browser. They basically use their browser to navigate to the front end of the service they want to use and administer it like that. For instance portainer to manage their docker containers, or pihole for managing their firewall, or even jellyfin for their media which is both the website to consume the media and has an administrator dashboard.
Edit: this is in complement to using something like tailscale which basically allows you to access these services away from home. They work in conjunction.
Ok, this is actually a helpful answer. I can appreciate what you mean by setting things up in docker and using a front end. I’ve done some of this on my Synology, but I try to avoid Docker because I don’t fundamentally understand what I’m doing, I’m mostly just following some tutorial I found online.
I understand your position. There is a learning curve to containers, but I can assure you that getting your basics on the topic will open a whole new world of possibilities and also make everything much easier for yourself. The vast majority of people run containers which make the services less brittle because they have their own tailored environment and don’t depend on the host libraries and packages and also brings increased security because the services can’t easily escape their boundaries rendering their potential vulnerabilities less of an issue compared to running those same services bare metal.
I started on synology too. There is a website called Marius hosting which focuses on tutorials for containers on synology, but his instructions have been updated the last few years to focus on spinning up containers manually rather than through the UI, which makes it more intimidating than it needs to be for beginners… I’ll link it here just as a reference. I’ll see if on the way back machine he shows the easier way and report back if I find something.
Edit: yes here is an original tutorial for Jellyfin (this method still works for me and is still how I use docker lately): https://web.archive.org/web/20210305002024/https://mariushosting.com/how-to-install-jellyfin-on-your-synology-nas/
- Tailscale for remote access
- Portainer for GUI docker management
- NGINX Proxy Manager running behind tailscale for accessing your services easier (can go into greater detail on this)
- SSH for anything else
IMO, trying to avoid CLI in server administration is doing yourself a long term disservice. Its not that challenging and you’ll learn a lot more about how everything works. Plus, you’re pretty much not going to be able to avoid the terminal forever.
I would love a layman’s guide to NGINX. every guide I come across is filled with unexplained jargon
https://lemmy.browntown.dev/post/1440768
Not sure if you getting mentioned in the post gives you a notification, but just wanted to drop the link here! Hope it helps, I tried to make the walkthrough pretty basic while still keeping it high level where it matters (like I assume anyone attempting this is familiar enough with selfhosting that they can install a docker container without me walking through the entire process)
appreciate it thanks, I’ll take a look
yes, I can run docker.
I know a lot of people have Pis set up like this and surely they can’t be administering the whole thing through CLI, right?
We are, indeed. I use a combination of SSH (for quick stuff), and Ansible for stuff I need to do repeatedly.
How do I get a similar setup to my Synology such that I can just get a desktop interface in a browser?
The tool you’re looking for is a ’VNC’ solution. There’s lots of them, and the best ones are free.
You can enable VNC on your Raspberry Pi through Raspi-Config. You’ll also need a VNC client on each device you want to connect from. Fin linked one above, I think.
And now some un- requested advice from me:
You mention running Ubuntu on the Raspberry Pi.
If you choose Ubuntu, I believe you will encounter many recipes online that will not work, because Ubuntu does not come with various Raspberry Pi specific tools pre-installed, such as
raspi-config
.Raspbian and Ubuntu are extremely similar (this is intentional).
But I have found:
- Many Raspberry Pi recipes will not work on Ubuntu, because Ubuntu does not include Pi specific software that is included in Raspbian.
- Most Ubuntu recipes work perfectly on Raspbian.
I think the Raspbian software can be added on top of Ubuntu, but I’ve never cared enough about the minor differences to even try.
The Ubuntu recipes I have found that don’t work on Raspbian also don’t work on Pi hardware at all, until I compile additional tools from source code. (A Raspberry Pi uses an ARM chip, which is cool, but makes it harder install some software that doesn’t support it.)
So the primary reason I’m going with Ubuntu is because my VPN is Proton and
So I’m afraid it might not run on anything else. The other stuff I want to run, Qbittorrent and eventually the *arrs, will probably run on anything. And it looks like I’ll probably need Docker anyway. So the real constraint right now driving the OS choice is Proton.
Makes sense. I suspect it may still not work due to Proton likely being compiled for Intel, rather than ARM chips.
If you run into that, you may be able to work around it by logging into the Raspberry Pi, cloning the source code and installing: (if you’re able to get that to work, it’ll likely work equally well on Ubuntu or Raspbian). But it’s not for the faint of heart, they (Proton) don’t include many details, so it looks like there will be a lot of learning about their tool chain. https://github.com/ProtonVPN/proton-vpn-gtk-app#installation
(Edit: Since ProtonVPN is Python based, it may be fine, as long as there’s not too much C in the project. If it works immediately, my gut feeling is it will also work fine on Raspbian, if you need to switch for any other reasons.)