What you want are two servers, one for each purpose. What you are proposing is very janky and will compromise the reliability of your services.
What you want are two servers, one for each purpose. What you are proposing is very janky and will compromise the reliability of your services.
Solid advice. Good to mention too: use btrfs as filesystem for a better experience with Timeshift.
If you have an interest in Arch, I’d recommend starting with a derivative distro like EndeavourOS. It’ll give you an easy installation process and a desktop that’s ready to use.
Then just use it as your daily driver. You’ll eventually run into the occasional issue when package X or Y upgrades and breaks something, learn to fix that, and eventually learn the “ins and outs” of Arch. That’s how I started, I went from Mint to Antergos, used that for a while, then when Antergos was discontinued (RIP) I converted my install to “pure” Arch and never looked back.
This here OP! ☝️
Jellyfin lets you do this easily.
Enough to run Chrome and 2 Electron apps!
Mine are all anime characters. Currently I have:
Suggest your friend to give Eturnal a try maybe. I have it running on an Oracle free tier instance, and I use it daily to have video calls with my family using Synapse/Element (and Jitsi inside Element for group calls), and it works great. The documentation is very good too.
Edit: this is my Eturnal config, for reference:
eturnal: listen: - ip: "::" port: 3478 transport: udp enable_turn: true - ip: "::" port: 3478 transport: auto enable_turn: true - ip: "::" port: 5349 transport: tls enable_turn: true realm: turn.<MY_DOMAIN> tls_crt_file: /etc/letsencrypt/live/turn.<MY_DOMAIN>/fullchain.pem tls_key_file: /etc/letsencrypt/live/turn.<MY_DOMAIN>/privkey.pem tls_options: - no_tlsv1 - no_tlsv1_1 - cipher_server_preference
And the compose file:
services: eturnal: container_name: eturnal image: ghcr.io/processone/eturnal:latest environment: ETURNAL_RELAY_MIN_PORT: 49160 ETURNAL_RELAY_MAX_PORT: 59160 ETURNAL_RELAY_IPV4_ADDR: <REDACTED> ETURNAL_RELAY_IPV6_ADDR: <REDACTED> ETURNAL_SECRET: <VERY LONG RANDOM STRING> volumes: - ./eturnal.yml:/etc/eturnal.yml:ro - /etc/letsencrypt:/etc/letsencrypt:ro restart: unless-stopped read_only: true cap_drop: - ALL security_opt: - no-new-privileges:true network_mode: host
I have a bunch of ST6000NM0095 (which are similar specs) in my NAS, and despite already being well used when I got them, so far only one needed to be replaced in nearly 5 years of (my) usage.
My only advice with these is: if you notice a maddening noise coming from them when they’re idle, update them to the latest firmware and it’ll go away.
+1 for Immich. It’s the most complete and competent Google Photos replacement yet.
If they take long or don’t resolve it, try the live support chat. I used the chat inside their app to request it and it was unlocked pretty much instantly.
O2 has an on-by-default security filter that blocks all sorts of “bad stuff”. For me, it was preventing connecting to any PIA VPN servers. Ping their customer support and they can disable it for you.
Assuming this is an option for you, convert your ext4 partition to btrfs (can be done without data loss) and enjoy having proper snapshot support. Timeshift makes it really easy to automate and manage btrfs snapshots.
This looks about right, I have a similar setup for unauthenticated services here, with the difference that I’m using NGINX Proxy Manager instead of Caddy. The things I would try/check are:
code.test.example.com
entry to point directly to Authentik’s IP and port (in other words, both entries would look the same). In the config your posted, it seems like Caddy is redirecting through itself.This. And I recently found out you can also use includes
in compose v2.20+, so if your stack complexity demands it, you can have a small top-level docker-compose.yml with includes to smaller compose files, per service or any other criteria you want.
https://docs.docker.com/compose/multiple-compose-files/include/
My stuff is all in docker-compose with a stack/service structure, so listing it is as simple as running
tree
, and reading the individual YAML files if I need in-depth details.