All checks were successful
Reese's Arch Toolbox / build-and-push-arch-toolbox (push) Successful in 14s
75 lines
1.7 KiB
Markdown
75 lines
1.7 KiB
Markdown
# Jellyfin
|
|
|
|
They have podman rootless instructions!
|
|
|
|
<https://jellyfin.org/docs/general/installation/container/#managing-via-systemd>
|
|
|
|
## Install
|
|
|
|
### Create jellyfin btrfs volume
|
|
|
|
```bash
|
|
btrfs sub create /btrfs/jellyfin
|
|
```
|
|
|
|
Add /home/jellyfin mount to /etc/fstab
|
|
|
|
```bash
|
|
systemctl daemon-reload
|
|
mount -a --mkdir
|
|
```
|
|
|
|
### Create the jellyfin user
|
|
|
|
```bash
|
|
export JF_USER=jellyfin
|
|
useradd $JF_USER
|
|
|
|
su -l $JF_USER
|
|
ssh-keygen
|
|
exit
|
|
cp ~/.ssh/authorized_keys /home/$JF_USER/.ssh/authorized_keys
|
|
chown $JF_USER:$JF_USER /home/$JF_USER/.ssh/authorized_keys
|
|
loginctl enable-linger $(id -u $JF_USER)
|
|
```
|
|
|
|
SSH into the server as jellyfin
|
|
|
|
```bash
|
|
systemctl --user enable podman-restart
|
|
systemctl --user enable --now podman.socket
|
|
mkdir -p ~/.config/containers/systemd
|
|
mkdir jellyfin-config jellyfin-cache jellyfin-media
|
|
```
|
|
|
|
### Install jellyfin
|
|
|
|
~/.config/containers/systemd/jellyfin.container
|
|
|
|
```bash
|
|
# Copy the files to the server
|
|
scp -r active/podman_jellyfin/quadlets/. jellyfin:~/.config/containers/systemd/
|
|
ssh jellyfin systemctl --user daemon-reload
|
|
ssh jellyfin systemctl --user start jellyfin
|
|
ssh jellyfin journalctl --user -xeu jellyfin
|
|
ssh jellyfin systemctl --user enable --now podman-auto-update.timer
|
|
```
|
|
|
|
Update the jellyfin record in Caddy.
|
|
|
|
Open port 8096 in the firewall.
|
|
|
|
## Mounting Media Directory
|
|
|
|
Update /etc/fstab with the smb disk details.
|
|
|
|
Note:
|
|
|
|
- `x-systemd.automount` which only mounts the device when it's accessed.
|
|
- `x-systemd.mount-timeout=30` allows a 30 second timeout
|
|
- `_netdev` ensures the device won't be mounted until after the network is available
|
|
|
|
```conf
|
|
UUID=... /btrfs/some-name btrfs subvolid=5,compress=zstd:1,x-systemd.automount,x-systemd.mount-timeout=30,_netdev 0 0
|
|
```
|