Help a beginner get started reddit / selfhosted ---------------------------------------------------------------------- Xpirav1t · 2023-10-08 20:13 Hey everyone, I am new to self-hosted world and I very much want to get into it. I want to have a home server run the following services: * Homarr * Pihole with DNScrypt * qBittorrent * Jackett * Radarr * Sonarr * Jellyfin * Jellyseerr * Photoprism * Nextcloud * Home assistant * Ngnix proxy manager * Code-server I looked at the documentation for each of these and have created a demo yml file which can be found [here](https://pastebin.com/R6qVXCEU) and also as a comment on this post. Anyway, after all this research I still have some questions and I thought I'd ask for some help: 1. What kind of hardware should I go for? I read that mini pcs are good for this kind of stuff, so I was thinking of getting a Beelink U59, but I am not sure if it can handle all of this. 2. I own a Synology DS220+ NAS. Is it possible to have the media services (Sonarr, Radarr, qBittorrent, Photoprism, Nextcloud) run on the server but store their data on the NAS? If so, where and how do I configure this? 3. As I said, I am completely new to this, and I still haven't completely grasped the concept of docker compose. The main thing I don't get is, what do I replace the `/path/to/appdata/config:/app/config` or the `/path/to/data:/data` in all the services in the yml file. What do those file paths mean? 4. The documentations of some services had the yml file ran on docker compose version 2.1. Does that mean they cannot be run alongside ones that are version 3? (The demo yml is v3 but has some services whose documentations had them run in 2.1) 5. After setting everything up, is there a way for me to securely access jellyfin, nextcloud, photoprism and home assistant outside my home network for free? 6. Is there another service I have overlooked that you would recommend? 7. Do you have any suggestions on how to optimize what I am planning on doing? ---------------------------------------------------------------------- thekrautboy · 2023-10-08 20:29 > I looked at the documentation for each of these and have created a demo yml file which can be found here Dont do this. Do not use one giant compose file and stuff any kind of service in there. Thats a terrible way to get started with Docker. See this very recent discussion about exactly this: https://www.reddit.com/r/selfhosted/comments/17114fo/better_docker_sta ck/ > What kind of hardware should I go for? I read that mini pcs are good for this kind of stuff, so I was thinking of getting a Beelink U59, but I am not sure if it can handle all of this. This sub here is about selfhosting **software services**, not about any hardware purchase or upgrade advice. Consider subs like /r/Homelab /r/HomeServer instead. > I own a Synology DS220+ NAS. Is it possible to have the media services (Sonarr, Radarr, qBittorrent, Photoprism, Nextcloud) run on the server but store their data on the NAS? If so, where and how do I configure this? Of course that is possible. How? Depends on a few things. Maybe try /r/HomeNetworking but also /r/Synology > As I said, I am completely new to this, and I still haven't completely grasped the concept of docker compose. The main thing I don't get is, what do I replace the /path/to/appdata/config:/app/config or the /path/to/data:/data in all the services in the yml file. What do those file paths mean? Those are mappings from inside the container to your Docker host machine. The left side of the : is the path on your host, you can chose that freely to store the persistent data of that container wherever you want. The right side of the : is the path inside the container, you cannot simply chose whatever there. Usually the creator of the Docker image provides info on which paths should be mapped and you should follow that. https://docs.docker.com/storage/bind-mounts/ > The documentations of some services had the yml file ran on docker compose version 2.1. Does that mean they cannot be run alongside ones that are version 3? That version has nothing directly to do with Docker or Docker Compose versions. It only declares "hey this file is according to the filespec version 3.2" so that compose knows what to expect from this file. But its only optional information, you can complete remove the version line if you want to. https://docs.docker.com/compose/compose-file/compose-file-v3/ For Docker specific questions you can also refer to /r/Docker > After setting everything up, is there a way for me to securely access jellyfin, nextcloud, photoprism and home assistant outside my home network for free? Yes, for example with a VPN. Look at /r/VPN for example. > Is there another service I have overlooked that you would recommend? No. You might be taking on too much already. Take it slow, learn to crawl before you try to run. ---------------------------------------------------------------------- Xpirav1t · 2023-10-08 20:50 Thank you that helps a lot. Sorry if this is a dumb question but aren't VPNs subscription based? I mean I have to pay to use one right? ---------------------------------------------------------------------- thekrautboy · 2023-10-08 20:54 No, VPN is the technology. You can run your own for free, or pay a company to use theirs. ---------------------------------------------------------------------- Xpirav1t · 2023-10-08 20:55 Didn't know that. Thanks a lot for your quick and detailed responses. ---------------------------------------------------------------------- fisheess89 · 2023-10-08 21:21 That's a lot to take on at the beginning. I would suggest first get nginx proxy manager going, then one step after another. It will take some time, be patient and willing to be frustrated when things don't work. ---------------------------------------------------------------------- Xpirav1t · 2023-10-08 21:23 Thank you for your suggestion.I understand that it will be a big undertaking and that's why I am here. I want to have as much information as possible before I get started. ---------------------------------------------------------------------- fisheess89 · 2023-10-08 21:29 For me it's been a learning by doing process. I encountered a lot of problems following guides. I have used a Synology Nas for over seven years and only the last year started to experiment with homelab/self hosting. I think you can just get a NUC or similar small machine (which will only cost less than 200€) and install proxmox, then experiment everything in VMs, keep your DS220+ as the daily driver and use it to supply NFS/SMB share for the NUC. After you are confident enough, you can invest in something more powerful. ---------------------------------------------------------------------- Xpirav1t · 2023-10-08 21:31 Do you have anything that can help me with my Nas situation? ---------------------------------------------------------------------- bobbarker4444 · 2023-10-09 00:50 The NAS should have its own software for making its drives available over the network. Alternatively you could install something like TrueNAS or Unraid to do the same ---------------------------------------------------------------------- Crazy-Hall8823 · 2023-10-09 01:06 Ditch qbittorrent and jackett for sabnzbd and prowlarr. Go usenet over torrents. 10000x better. ---------------------------------------------------------------------- prime_1996 · 2023-10-09 11:09 I have a better experience with Torrent than I had with Usenet and it's free. I do recommend using a paid VPN though. ---------------------------------------------------------------------- prime_1996 · 2023-10-09 11:13 For hardware I recommend looking at used SFF mini PCs, you can add more RAM and install proxmox for example, which gives you a lot of features, including backups and LXC containers. You can then use your NAS as a NFS/SMB server, and connect proxmox to that, giving you the ability to add NAS storage to your container/VMs. ---------------------------------------------------------------------- bradza12 · 2023-10-09 14:27 For ease of use I’d install docker and then portainer on your main server, the you have a webgui where you can spin up your docker compose files. I would create a separate compose file for each service and their dependencies. Nginx proxy manager as your reverse proxy for access outside network, port forward ports 80 and 443 ONLY to NPM and add SSL certificates to it for your custom domain and force ssl on every service. I would recommend putting a middleware like authelia/authentik for a layer of security between the internet and your services. Honestly docker with portainer is the easiest way to get services running and to update/maintain. However I’m no expert it’s just what I personally use 🤷🏼‍♂️ ---------------------------------------------------------------------- bradza12 · 2023-10-09 14:29 EDIT: if you’re the only person using the services outside of the network then use a vpn, it’s more secure and also using something like tail scale is very easy to setup and use 🤷🏼‍♂️ ---------------------------------------------------------------------- JaAnoooSlovakia · 2023-10-09 14:58 I would run portainer to manage your docker containers, and use these https://github.com/Lissy93/portainer-templates templates which you can use to one-click deploy docker containers you mentioned, and many many more ---------------------------------------------------------------------- Crazy-Hall8823 · 2023-10-09 18:42 Torrents suck. The quality you get with usenet over torrents is worth the minimal paint required to access the servers. If you prefer torrents all the power to you. Inswitched from torrents about a year ago and I will never go back ---------------------------------------------------------------------- priyajit4u · 2023-10-10 12:23 I am also new to self hosting....I found that using Casaos or cosmos with docker is very easy to setup ...from that you can tinker and play around