Merge branch 'v3' into 'master'

V3 - The big one

See merge request rogs/yams.media!8
This commit is contained in:
Roger Gonzalez 2024-12-30 14:01:25 +00:00
commit 001d0e9aa2
52 changed files with 1948 additions and 1164 deletions

View File

@ -3,70 +3,126 @@ title: "Adding your own containers to YAMS"
date: 2023-10-21T21:41:29-03:00
draft: false
weight: 1
summary: Instructions on how to add your own Docker containers to YAMS.
summary: A complete guide to expanding YAMS with your own Docker containers
---
Adding your own containers in YAMS is very easy.
# Make YAMS Your Own! 🚀
First, go to your install location. For the purposes of this tutorial, I'll use `/opt/yams`.
Want to add more containers to your YAMS setup? Maybe a cool new app you found, or something specific for your needs? No problem! YAMS makes it super easy to expand your media server with custom containers.
## The Basics 📚
When you install YAMS, it creates two important files:
- `docker-compose.yaml`: This is YAMS's brain! Don't modify this file directly.
- `docker-compose.custom.yaml`: This is your playground! Add all your custom containers here.
## Getting Started 🎯
First, let's find your YAMS installation. I'll use `/opt/yams` in these examples, but replace it with your actual install location:
```bash
cd /opt/yams
```
If you `ls`, you'll see 2 files:
- `docker-compose.yaml`: This is YAMS. You shouldn't mess with this file manually.
- `docker-compose.custom.yaml`: Here's where you'll add your containers. Any container you add here will be automatically added to the YAMS network and will be able to communicate locally with YAMS.
## The Magic Variables ✨
To add your containers, you'll have a few environment variables available:
- `PUID`: Your PUID.
- `PGID`: Your PGID.
- `MEDIA_DIRECTORY`: Your media directory.
- `INSTALL_DIRECTORY`: Your install location.
# Adding a container
As an example, I'll add [Overseerr](https://overseerr.dev/).
Open `docker-compose.custom.yaml` and add the following information:
YAMS provides some handy environment variables you can use in your custom containers:
```yaml
version: "3"
PUID: Your user ID
PGID: Your group ID
MEDIA_DIRECTORY: Your media folder location
INSTALL_DIRECTORY: Your YAMS installation location
```
services: # -> Uncomment this line! (remove the "#" in front of it)
These make it super easy to keep your custom containers working in harmony with YAMS!
# Add your container here 👇
## Let's Add a Container! 🎮
Let's walk through an example by adding [Overseerr](https://overseerr.dev/) - a fantastic request management app for your media server.
1. First, open `docker-compose.custom.yaml`:
```bash
nano docker-compose.custom.yaml
```
2. If this is your first custom container, you'll need to uncomment the `services:` line. Your file should start like this:
```yaml
services: # Make sure this line is uncommented!
```
3. Now let's add Overseerr with all the YAMS goodies:
```yaml
overseerr:
image: lscr.io/linuxserver/overseerr:latest
container_name: overseerr
environment:
- PUID=${PUID} # Note how I'm using the env variables here
- PGID=${PGID} # Note how I'm using the env variables here
- PUID=${PUID} # Using YAMS's user ID
- PGID=${PGID} # Using YAMS's group ID
volumes:
- ${INSTALL_DIRECTORY}/config/overseer:/config # Note how I'm using the env variables here
- ${INSTALL_DIRECTORY}/config/overseer:/config # Using YAMS's config location
ports:
- 5055:5055
restart: unless-stopped
```
To start the container, run:
4. Time to start your new container:
```bash
yams restart
```
If everything is okay, you should see Overseer installing:
You should see something like:
```bash
⠙ overseerr Pulling 5.2s
...
⠙ overseerr Pulling 5.2s
[...]
```
And that's it!
That's it! Your new container is up and running! 🎉
You can find new containers here:
- https://fleet.linuxserver.io/ (recommended).
- https://hub.docker.com/.
## Pro Tips 🎓
### 1. Container Discovery
Looking for cool containers to add? Check out:
- [linuxserver.io fleet](https://fleet.linuxserver.io/) (Highly recommended!)
- [Docker Hub](https://hub.docker.com/)
### 2. Network Magic 🌐
All containers in your `docker-compose.custom.yaml` automatically join YAMS's network! This means they can talk to each other using their container names as hostnames.
For example, if you need to connect to Radarr from a custom container, just use `http://radarr:7878` as the URL.
### 3. VPN Access 🔒
Want your custom container to use YAMS's VPN? Add this to your container config:
```yaml
network_mode: "service:gluetun"
```
Check out [Running Prowlarr behind the VPN](/advanced/prowlarr-behind-vpn) for a detailed example!
### 4. Variable Power 💪
You can access any environment variable from YAMS's `.env` file in your custom containers. Just use the `${VARIABLE_NAME}` syntax!
## Common Gotchas 🚨
1. **Container Names**: Make sure your custom container names don't conflict with YAMS's built-in containers.
2. **Port Conflicts**: Double-check that your new containers don't try to use ports that are already taken.
3. **Permissions**: If your container needs to access media files, remember to use `PUID` and `PGID`!
## Need Ideas? 💡
Here are some popular containers that work great with YAMS:
1. **[Overseerr](https://overseerr.dev/)** or **[Petio](https://petio.tv/)**: Let users request movies and shows
2. **[Tautulli](https://tautulli.com/)**: Advanced Plex monitoring and statistics
3. **[Organizr](https://organizr.app/)**: Create a sleek dashboard for all your services
## Need Help? 🆘
If you run into any issues:
1. Check our [Common Issues](/faqs/common-errors/) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
Remember: YAMS is all about making your media server work for YOU. Don't be afraid to experiment and make it your own! 😎

View File

@ -2,72 +2,175 @@
title: "Backups"
date: 2023-01-17T19:38:39-03:00
draft: false
weight: 4
summary: Backup your YAMS configuration.
weight: 6
summary: Everything you need to know about backing up and restoring your YAMS setup
---
Your YAMS configuration is located in your YAMS install directory.
# Keeping Your YAMS Safe 💾
## Create a backup
Your YAMS configuration is precious! Let's make sure it's properly backed up so you can recover from any mishaps.
For the purposes of this tutorial, I'll assume your YAMS install directory is `/opt/yams`, and that you want to create a backup on your `~` directory.
## Creating Backups 📦
First, go to the YAMS install directory and do a `ls`. You should see the `config` folder right there:
YAMS includes a super handy backup command that takes care of everything:
```bash
$ cd /opt/yams/
/opt/yams$ ls
# Output
config docker-compose.yaml
yams backup [destination]
```
To create a backup, just run:
### Quick Backup Example
Let's say you want to back up to your home directory:
```bash
yams backup ~/backups/
```
You'll see something like this:
```bash
Stopping YAMS services...
Backing up YAMS to /home/roger...
This may take a while depending on the size of your installation.
Please wait... ⌛
Backup completed! 🎉
Starting YAMS services...
Backup completed successfully! 🎉
Backup file: /home/roger/yams-backup-2024-12-23-1734966570.tar.gz
```
### What Gets Backed Up? 🤔
The backup includes:
- All your container configurations
- Your YAMS settings
- Your service preferences
- Custom container configurations
- Important environment variables
### Pro Backup Tips 💡
1. **Regular Backups**: Schedule them weekly or monthly
2. **Multiple Locations**: Keep copies in different places
3. **Before Updates**: Always backup before updating YAMS
4. **Version Control**: Keep a few recent backups around
5. **Test Restores**: Occasionally verify your backups work
## Restoring from Backup 🔄
Need to restore your YAMS setup? Here's the step-by-step guide:
### Step 1: Extract the Backup
```bash
tar -xzvf your-backup.tar.gz -C /your/new/location
cd /your/new/location
```
### Step 2: Update YAMS Configuration
Edit the YAMS binary with your favorite text editor (we'll use `nano` here, but use whatever you prefer):
```bash
nano yams
```
Find and update these lines:
```bash
#!/bin/bash
set -euo pipefail
# Constants
readonly DC="docker compose -f your/new/location/docker-compose.yaml -f your/new/location/docker-compose.custom.yaml" # Update this!
readonly INSTALL_DIRECTORY="your/new/location" # Update this!
```
### Step 3: Install YAMS Binary
```bash
sudo cp yams /usr/local/bin/
```
### Step 4: Start YAMS
```bash
yams start
```
## Best Practices 📚
1. **Regular Schedule**
```bash
# Example: Weekly backups to different locations
yams backup ~/backups/weekly/
yams backup /mnt/external/yams-backup/
```
2. **Pre-Update Backups**
```bash
# Before running yams update
yams backup ~/backups/pre-update/
```
## Troubleshooting 🔧
### Backup Failed?
1. Check disk space:
```bash
df -h
```
2. Verify write permissions:
```bash
ls -la /backup/destination
```
3. Try stopping services manually:
```bash
yams stop
```
### Restore Issues?
1. Verify backup integrity:
```bash
tar -tvf your-backup.tar.gz
```
2. Check file permissions
3. Ensure all paths are correct in the YAMS binary
## Advanced Topics 🎓
### Automated Backups
You can automate backups using cron. Here's an example:
1. Open your crontab:
```bash
crontab -e
```
2. Add a weekly backup job:
```bash
# Run backup every Sunday at 2 AM
0 2 * * 0 /usr/local/bin/yams backup /path/to/backups/
```
### Backup Rotation
Keep your backups manageable with rotation:
```bash
/opt/yams/config$ tar -czvf ~/yams-backup.tar.gz config/*
#!/bin/bash
# backup-rotate.sh
MAX_BACKUPS=5
BACKUP_DIR="/path/to/backups"
# Create new backup
yams backup $BACKUP_DIR
# Remove old backups
ls -t $BACKUP_DIR/yams-backup-* | tail -n +$((MAX_BACKUPS + 1)) | xargs rm -f
```
`tar` is going to compress and create a `.tar.gz` file called `yams-backup.tar.gz` on the `~` directory.
## Need Help? 🆘
Remember you should store your backups in a secure location!
If you run into backup or restore issues:
1. Check our [Common Issues](/faqs/common-errors/) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
## Restore a backup
For the purposes of this tutorial, I'll assume your YAMS install directory is `/opt/yams`, and that the backup is located in `~/yams-backup.tar.gz`.
To restore a backup, first stop YAMS:
```bash
$ yams stop
```
Then, go to your YAMS install directory and delete everything inside the `config` folder.
```bash
$ cd /opt/yams
/opt/yams$ rm -r config/*
```
Now, untar the backup file on your YAMS install directory.
```bash
/opt/yams$ tar -xzvf ~/yams-backup.tar.gz
```
If you see all the folders inside the `config` directory, it means it worked!
```bash
/opt/yams$ ls config
# Output
bazarr emby gluetun prowlarr qbittorrent radarr sonarr
```
Finally, restart YAMS
```bash
/opt/yams$ yams start
```
Everything should be running as expected, with your backup up and running!
Remember: The best time to make a backup is BEFORE you need it! 🎯

View File

@ -2,7 +2,7 @@
title: "Lidarr"
date: 2023-01-31T11:20:14-03:00
draft: false
weight: 6
weight: 8
summary: Lidarr is a music collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new albums from your favorite artists and will interface with clients and indexers to grab, sort, and rename them. It can also be configured to automatically upgrade the quality of existing files in the library when a better quality format becomes available.
---

View File

@ -0,0 +1,78 @@
---
title: "Port Forwarding"
date: 2024-12-30T10:14:29-03:00
draft: false
weight: 3
summary: Everything you need to know about configuring and using a VPN with YAMS
---
Port forwarding helps you get better download speeds by allowing incoming connections to your torrent client. YAMS enables port forwarding by default, but setup varies by VPN provider.
## ProtonVPN Users 🚀
ProtonVPN makes port forwarding easy! Just follow these steps:
1. Create a script to update qBittorrent's port. Make sure you change `/your/install/location`:
```bash
mkdir -p /your/install/location/scripts
nano /your/install/location/scripts/update-port.sh
```
2. Add this code to the script: https://gitlab.com/-/snippets/4788387. Make sure you edit this to match your own configuration:
```bash
QBITTORRENT_USER=admin # qbittorrent username
QBITTORRENT_PASS=adminadmin # qbittorrent password
```
3. Make the script executable:
```bash
chmod +x /your/install/location/scripts/update-port.sh
```
4. Run it to verify it's working:
```bash
./your/install/location/scripts/update-port.sh
```
You should see an output similar to this:
```bash
2024-12-30 08:21:58 | VPN container gluetun in healthy state!
2024-12-30 08:21:58 | qBittorrent Cookie invalid, getting new SessionID
2024-12-30 08:21:58 | Public IP: 111.111.111.111
2024-12-30 08:21:58 | Configured Port: 61009
2024-12-30 08:21:58 | Active Port: 61009
2024-12-30 08:21:58 | Port OK (Act: 61009 Cfg: 61009)
```
5. Set up automatic port updates (runs every 5 minutes):
```bash
(crontab -l 2>/dev/null; echo "*/5 * * * * /your/install/location/scripts/update-port.sh") | crontab -
```
## Other VPN Providers 🌐
For other VPN providers, port forwarding configuration varies.
For detailed provider-specific instructions, check the [Gluetun Port Forwarding Documentation](https://github.com/qdm12/gluetun-wiki/blob/main/setup/advanced/vpn-port-forwarding.md).
## Verifying Port Forwarding ✅
To check if port forwarding is working:
1. Run `curl http://localhost:8003/v1/openvpn/portforwarded` to see your current port
2. Visit [Open Port Check Tool](https://www.yougetsignal.com/tools/open-ports/) and test your port by using your public VPN IP and the active port
3. Check qBittorrent's connection status - it should show "Connection Status: Connected"
[![conection-status](/pics/advanced-port-forwarding-1.png)](/pics/advanced-port-forwarding-1.png)
## Troubleshooting 🔧
1. **No port shown:**
```bash
docker logs gluetun | grep "\[port forwarding\]"
```
Look for any error messages
2. **Port not updating:**
- Check if the script has execute permissions
- Verify crontab is running: `crontab -l`
- Check script logs: `tail -f /var/log/syslog | grep update-port`
Need help? Visit our [Common Issues](/faqs/common-errors/) page or join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat!

View File

@ -2,39 +2,140 @@
title: "Portainer"
date: 2023-01-30T15:46:05-03:00
draft: false
weight: 5
summary: Deploy, configure, troubleshoot and secure containers in minutes on Kubernetes, Docker, Swarm and Nomad in any data center, cloud, network edge or IIOT device.
weight: 7
summary: Your visual control center for all YAMS containers
---
# What is Portainer?
# What is Portainer? 🐋
From their [website](https://www.portainer.io/)
Think of Portainer as your mission control for Docker! It gives you a sleek web interface to manage all your containers, making it way easier than typing commands in the terminal all day.
From their [website](https://www.portainer.io/):
> Deploy, configure, troubleshoot and secure containers in minutes on Kubernetes, Docker, Swarm and Nomad in any data center, cloud, network edge or IIOT device.
Portainer is an optional configuration for YAMS. It can help you with debugging and having a visual perspective of all your docker containers.
Portainer is optional in YAMS, but we highly recommend it. It's like having x-ray vision into your containers! 🦸‍♂️
## Initial configuration
## Initial Setup 🚀
In your browser, go to [http://{your-ip-address}:9000/]() and you'll see Portainer's setup page.
### Step 1: Access Portainer
Open your browser and go to `http://{your-ip-address}:9000/`. You'll see the first-time setup screen.
Choose your username/password and press "Create user".
### Step 2: Create Admin Account
Let's set up your admin credentials:
1. Choose a secure username
2. Pick a strong password
3. Click "Create User"
[![portainer-1](/pics/portainer-1.png)](/pics/portainer-1.png)
[![Portainer setup](/pics/portainer-1.png)](/pics/portainer-1.png)
On the "Quick Setup" screen, select "Get Started". That's going to do a basic Portainer setup.
### Step 3: Quick Setup
On the "Quick Setup" screen:
1. Click "Get Started" - this sets up Portainer with good default settings
2. No need to mess with advanced options for now!
[![portainer-2](/pics/portainer-2.png)](/pics/portainer-2.png)
[![Quick setup](/pics/portainer-2.png)](/pics/portainer-2.png)
Now on your home, click on your "local" docker environment.
### Step 4: Access Your Environment
1. Click on your "local" Docker environment
2. This is where all the magic happens!
[![portainer-3](/pics/portainer-3.png)](/pics/portainer-3.png)
[![Local environment](/pics/portainer-3.png)](/pics/portainer-3.png)
To see all your containers, click on "Containers"
[![portainer-4](/pics/portainer-4.png)](/pics/portainer-4.png)
## Managing Your Containers 🎮
Here you can see all your containers! Make changes, check stats, logs, etc!
### Viewing Containers
1. Click on "Containers" in the left menu
2. Here you'll see all your running YAMS services
[![portainer-5](/pics/portainer-5.png)](/pics/portainer-5.png)
[![Container list](/pics/portainer-4.png)](/pics/portainer-4.png)
From here, the sky is the limit! Portainer can run new containers, delete containers, change volumes, basically whatever you want to do with your Docker containers! Portainer its a very cool tool that is worth to learn and check out!
### What You Can Do Here
- 👀 Monitor container status
- 🔄 Restart services
- 📊 Check resource usage
- 📝 View logs
- ⚙️ Change container settings
[![Container details](/pics/portainer-5.png)](/pics/portainer-5.png)
## Pro Tips 💡
### 1. Container Management
- **Quick Restart**: Use the circular arrow icon next to a container
- **Batch Actions**: Select multiple containers to restart/stop them together
- **Auto-Refresh**: Enable auto-refresh to monitor containers in real-time
### 2. Logs and Troubleshooting
- View container logs directly in Portainer
- Check container stats for resource usage
- Inspect container configuration when things go wrong
### 3. Resource Monitoring
- Monitor CPU and memory usage
- Track network traffic
- Set up resource limits if needed
## Cool Features You Should Try 🌟
1. **Container Console**
- Access container terminals directly from the web
- Great for quick debugging!
2. **Real-Time Stats**
- Monitor CPU, memory, and network usage
- Perfect for spotting performance issues
3. **Volume Management**
- Check where your data is stored
- Manage persistent storage
4. **Network Overview**
- See how containers are connected
- Troubleshoot network issues
## Best Practices 📚
1. **Security**
- Change the default admin password regularly
- Use a strong password
- Don't expose Portainer to the internet
2. **Monitoring**
- Check container logs regularly
- Monitor resource usage
- Set up email alerts for container failures
3. **Maintenance**
- Restart containers gracefully
- Use the "Recreate" option when updating
- Keep an eye on storage usage
## Troubleshooting 🔧
### Can't Access Portainer?
1. Check if the container is running:
```bash
yams check portainer
```
2. Verify the port isn't blocked
3. Make sure you're using the right IP address
### Container Issues?
1. Check container logs in Portainer
2. Look for error messages
3. Verify container settings
### Resource Problems?
1. Monitor container stats
2. Check host system resources
3. Consider setting resource limits
## Need Help? 🆘
If you're stuck:
1. Check our [Common Issues](/faqs/common-errors/) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
4. Check [Portainer's documentation](https://docs.portainer.io/)
Remember: Portainer is your friend! It makes managing YAMS much easier, so take some time to explore its features. 🎮

View File

@ -1,63 +1,138 @@
---
title: "Running Prowlarr behind the VPN"
title: "Running Prowlarr Behind the VPN"
date: 2024-09-27T16:44:00-03:00
draft: false
weight: 3
summary: How to put Prowlarr behind the VPN just like qBitTorrent
weight: 4
summary: A complete guide to routing Prowlarr's traffic through your VPN for extra privacy
---
While not usually illegal, downloading .torrent files can be a grey area in a lot of places. Because of this, some ISPs will attempt to block indexers.
An obvious way around this is by putting Prowlarr itself behind the VPN. Here's the steps to do that
# Extra Privacy for Prowlarr 🔒
While downloading .torrent files isn't usually illegal, some ISPs might try to block your access to indexers. Let's fix that by putting Prowlarr behind your VPN!
## Modifying Prowlarr
- Open your `docker-compose.yaml` file in your text editor of choice
- Scroll down to the `prowlarr` service and remove the `ports` section
- Add a new line: `network_mode: "service:gluetun"` (if you've renamed your Gluetun service, be sure to match the service names here)
- Under the existing `environment` section, add this line `- WEBUI_PORT=9696`
- Once finished, your Prowlarr service should look something like this
```yaml
prowlarr:
image: lscr.io/linuxserver/prowlarr
container_name: prowlarr
network_mode: "service:gluetun"
environment:
- PUID=${PUID}
- PGID=${PGID}
- WEBUI_PORT=9696
volumes:
- ${INSTALL_DIRECTORY}/config/prowlarr:/config
restart: unless-stopped
```
## Why Put Prowlarr Behind the VPN? 🤔
## Modifying Gluetun
- Scroll down to the `gluetun` section
- Under the `ports` section, add this line `- 9696:9696/tcp`
- Under the `environment` section, add this line: `- FIREWALL_OUTBOUND_SUBNETS=192.168.1.0/24` (NOTE: You'll want the subnet to match the subnet for your containers)
- If you're unsure what subnets your containers are running under, open up Portainer, click on `Containers`, and look in the `IP Address` column
- You really only need to care about the first two sections of the IP address. So if your containers are running under `172.18.X.X` then your entry would look like: `- FIREWALL_OUTBOUND_SUBNETS=172.18.1.0/24`
- Once finished, your Gluetun service should look something like this:
```yaml
gluetun:
image: qmcgaw/gluetun:v3
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
ports:
- 8888:8888/tcp # HTTP proxy
- 8388:8388/tcp # Shadowsocks
- 8388:8388/udp # Shadowsocks
- 8080:8080/tcp # gluetun
- 9696:9696/tcp
volumes:
- ${INSTALL_DIRECTORY}/config/gluetun:/config
environment:
- FIREWALL_OUTBOUND_SUBNETS=192.168.1.0/24 # NOTE: May look different on your system. Double check the subnets in Portainer
restart: unless-stopped`
```
1. **Bypass ISP Blocks**: Some ISPs block torrent indexer websites
2. **Extra Privacy**: Keep your searches private
3. **Better Access**: Reach indexers that might be geo-blocked in your country
Once all of your changes have been made, save and close the file
## Configuration Steps 🛠️
In your terminal, run `yams restart` to bounce the stack and apply your changes
We'll need to modify two services in your `docker-compose.yaml` file: Prowlarr and Gluetun. Let's do this step by step!
### Step 1: Modify Prowlarr's Config
First, let's update Prowlarr to use the VPN network. Open your `docker-compose.yaml` and find the Prowlarr service:
```yaml
prowlarr:
image: lscr.io/linuxserver/prowlarr
container_name: prowlarr
# Delete or comment out the 'ports' section
# ports:
# - 9696:9696
network_mode: "service:gluetun" # Add this line
environment:
- PUID=${PUID}
- PGID=${PGID}
- WEBUI_PORT=9696 # Add this line
volumes:
- ${INSTALL_DIRECTORY}/config/prowlarr:/config
restart: unless-stopped
```
Key changes:
1. Remove or comment out the `ports` section
2. Add `network_mode: "service:gluetun"`
3. Add `WEBUI_PORT=9696` to the environment variables
### Step 2: Update Gluetun's Config
Now we need to tell Gluetun to handle Prowlarr's traffic. Find the Gluetun service in your `docker-compose.yaml`:
```yaml
gluetun:
image: qmcgaw/gluetun:v3
container_name: gluetun
cap_add:
- NET_ADMIN
devices:
- /dev/net/tun:/dev/net/tun
ports:
- 8888:8888/tcp # HTTP proxy
- 8388:8388/tcp # Shadowsocks
- 8388:8388/udp # Shadowsocks
- 8080:8080/tcp # gluetun
- 9696:9696/tcp # Add this line for Prowlarr
volumes:
- ${INSTALL_DIRECTORY}/config/gluetun:/config
environment:
- FIREWALL_OUTBOUND_SUBNETS=192.168.1.0/24 # Add this line
restart: unless-stopped
```
Key changes:
1. Add `9696:9696/tcp` to the ports
2. Add `FIREWALL_OUTBOUND_SUBNETS` to the environment section
### Step 3: Find Your Subnet 🔍
The `FIREWALL_OUTBOUND_SUBNETS` value needs to match your container subnet. Here's how to find it:
1. Open Portainer
2. Click on "Containers"
3. Look at the "IP Address" column
Most setups use one of these subnets:
- `172.18.0.0/24` - If your containers use IPs like `172.18.x.x`
- `192.168.1.0/24` - If your containers use IPs like `192.168.1.x`
### Step 4: Apply the Changes 🔄
Save your changes and restart YAMS:
```bash
yams restart
```
## Testing Your Setup 🎯
After YAMS restarts, check that:
1. You can still access Prowlarr at `http://your-ip:9696`
2. Your indexers still work
3. The search function works correctly
## Troubleshooting 🔧
### Can't Access Prowlarr?
1. Check Gluetun's logs:
```bash
docker logs gluetun
```
2. Verify your subnet setting is correct
3. Make sure the port mapping is right in both services
### Indexers Not Working?
1. Check your VPN connection:
```bash
yams check-vpn
```
2. Try accessing an indexer manually through Prowlarr
3. Check Prowlarr's logs for any errors
### Still Having Issues?
1. Compare your configuration with the examples above
2. Make sure your VPN provider allows port forwarding
3. Try a different VPN server
## Pro Tips 💡
1. **Speed Matters**: Choose a VPN server close to you for better performance
2. **Regular Checks**: Use `yams check-vpn` to verify your VPN is working
3. **Monitor Logs**: Keep an eye on both Prowlarr and Gluetun logs for issues
## Need Help? 🆘
If you're stuck:
1. Check the [Common Issues](/faqs/common-errors/) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
Remember: Taking a few extra steps for privacy is always worth it! Stay safe out there! 🛡️

View File

@ -2,7 +2,7 @@
title: "Readarr"
date: 2023-01-31T13:52:34-03:00
draft: false
weight: 7
weight: 9
summary: Readarr is a ebook collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new books from your favorite authors and will interface with clients and indexers to grab, sort, and rename them.
---

View File

@ -2,60 +2,133 @@
title: "Torrenting"
date: 2023-01-16T14:48:14-03:00
draft: false
weight: 3
summary: Advanced torreting advices.
weight: 5
summary: Everything you need to know about safe and effective torrenting with YAMS
---
## Downloading torrents manually
# Advanced Torrenting with YAMS 🌊
Now that you have a Bittorrent client always available, you can use it to download any torrents you find online.
While [Sonarr](/config/sonarr) and [Radarr](/config/radarr) handle most of your downloads automatically, sometimes you might want to download something manually. Let's explore how to do that safely!
To add a new torrent, click on the "Add torrent file" option:
## Manual Downloads 📥
[![advanced-torrent-1](/pics/advanced-torrent-1.png)](/pics/advanced-torrent-1.png)
### Adding Torrent Files
1. Open qBittorrent at `http://{your-ip}:8081`
2. Click the "+" icon or "Add torrent file" button:
[![Add torrent button](/pics/advanced-torrent-1.png)](/pics/advanced-torrent-1.png)
Now, select your .torrent file and click on "Upload Torrents".
3. Select your .torrent file and click "Upload Torrents":
[![Upload torrents](/pics/advanced-torrent-2.png)](/pics/advanced-torrent-2.png)
[![advanced-torrent-2](/pics/advanced-torrent-2.png)](/pics/advanced-torrent-2.png)
Finally, you'll see your torrent downloading.
[![advanced-torrent-3](/pics/advanced-torrent-3.png)](/pics/advanced-torrent-3.png)
Once it finishes downloading, you can find your torrent file in your mediafolder, on the "downloads" folder.
4. Watch your download progress:
[![Download progress](/pics/advanced-torrent-3.png)](/pics/advanced-torrent-3.png)
### Finding Your Downloads
When your download finishes, find it in your media folder under the "downloads" directory:
```bash
/srv/media$ tree downloads/
downloads/
└── debian-11.6.0-amd64-DVD-1.iso
/srv/media$ tree downloads/torrents/
downloads/torrents/
└── your-downloaded-file.iso
0 directories, 1 file
```
## Double checking your torrent client IP address
## Safety First: IP Leak Testing 🛡️
If you want to be extra sure your IP is not leaking in qBittorrent, you can use this simple check.
Even with a VPN, it's good practice to verify that your real IP isn't leaking. Here's how to do a thorough check:
Go to https://www.whatismyip.net/tools/torrent-ip-checker/index.php and grab the testing magnet link.
### Using the IP Checker
[![advanced-torrent-4](/pics/advanced-torrent-4.png)](/pics/advanced-torrent-4.png)
1. Visit [whatismyip.net's Torrent Checker](https://www.whatismyip.net/tools/torrent-ip-checker/index.php) and grab their test magnet link:
[![Torrent checker](/pics/advanced-torrent-4.png)](/pics/advanced-torrent-4.png)
In qBittorrent, click on "Add Torrent Link".
2. In qBittorrent, click "Add Torrent Link":
[![Add magnet link](/pics/advanced-torrent-5.png)](/pics/advanced-torrent-5.png)
[![advanced-torrent-5](/pics/advanced-torrent-5.png)](/pics/advanced-torrent-5.png)
3. Paste the magnet link and click "Download":
[![Paste magnet](/pics/advanced-torrent-6.png)](/pics/advanced-torrent-6.png)
And paste the magnet link on the box. When you are done, click on "Download".
4. You'll see a new torrent called "Torrent Tracker IP Checker" in your list. Don't worry - it won't actually download anything!
[![IP checker torrent](/pics/advanced-torrent-7.png)](/pics/advanced-torrent-7.png)
[![advanced-torrent-6](/pics/advanced-torrent-6.png)](/pics/advanced-torrent-6.png)
5. Back on the checker website, you'll see your torrent client's IP:
[![IP check results](/pics/advanced-torrent-8.png)](/pics/advanced-torrent-8.png)
You'll see a new torrent called "Torrent Tracker IP Checker". This torrent is never going to start downloading, it's just for https://whatsmyip.net to check the IP address.
### Verifying the Results 🔍
[![advanced-torrent-7](/pics/advanced-torrent-7.png)](/pics/advanced-torrent-7.png)
For proper privacy protection, check that:
1. The reported IP is **different** from your real IP address
2. The IP matches what `yams check-vpn` reports
3. The country shown matches your VPN server location
Back at the torrent tracker page, you'll see the data for your torrent and your qBittorrent IP!
## Pro Tips for Safe Torrenting 🎯
[![advanced-torrent-8](/pics/advanced-torrent-8.png)](/pics/advanced-torrent-8.png)
1. **Always Verify VPN First**
```bash
yams check-vpn
```
Do this before starting any downloads!
The IP address **has to be different from your own IP address**, and **it has to match the output of** `yams check-vpn`.
2. **Use the Kill Switch**
YAMS configures qBittorrent to only use the VPN network interface. If the VPN drops, downloads stop automatically.
You are now extra sure your IP is not going to get leaked from torrenting!
3. **Regular Testing**
- Run the IP leak test monthly
- Check VPN status before large downloads
- Monitor qBittorrent's connection status
4. **Download Organization**
- Use labels for different types of content
- Set up category-specific download folders
- Remove completed torrents regularly
5. **Enable Port Forwarding**
- Check our [Port Forwarding Guide](/advanced/port-forwarding/)
- Significantly improves download speeds
- Works automatically with ProtonVPN
## Troubleshooting Common Issues 🔧
### Downloads Won't Start
1. Check VPN connection:
```bash
yams check-vpn
```
2. Verify tracker status in qBittorrent
3. Try a different VPN server
### Slow Speeds
1. Try a VPN server closer to you
2. Check if your VPN provider throttles P2P
3. Verify you're not hitting VPN bandwidth limits
### Connection Drops
1. Check VPN provider status
2. Try a different VPN server
3. Monitor system resources
## Best Practices 📚
1. **Keep VPN Active**
- Always check VPN status before downloading
- Use `yams check-vpn` regularly
- Monitor qBittorrent's network interface
2. **Regular Maintenance**
- Clear completed torrents
- Update qBittorrent when YAMS prompts
- Run periodic IP leak tests
3. **Download Management**
- Set reasonable ratio limits
- Use categories for organization
- Monitor disk space regularly
## Need Help? 🆘
Having issues with torrenting? We've got you covered:
1. Check the [Common Issues](/faqs/common-errors/) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
Remember: Safe torrenting is good torrenting. Always verify your VPN is working before downloading! 🛡️

View File

@ -3,15 +3,27 @@ title: "VPN"
date: 2023-01-15T21:16:29-03:00
draft: false
weight: 2
summary: Advanced configuration for the VPN, supported VPN lists and manual configuration.
summary: Everything you need to know about configuring and using a VPN with YAMS
---
Remember: **You should always use a VPN when downloading torrents!**.
# Keeping Your Downloads Private 🔒
YAMS uses [gluetun](https://github.com/qdm12/gluetun) for VPN.
Let's talk about VPNs! While they might seem like an optional extra, **you should always use a VPN when downloading torrents**. It's not just about privacy - it's about keeping you safe and sound on the internet!
## Official supported VPNs
YAMS uses [gluetun](https://github.com/qdm12/gluetun) to manage VPN connections. It's like a super-smart traffic controller for your downloads! 🚦
## Supported VPN Providers 🌐
YAMS works with tons of VPN providers! Here's the full list, with direct links to their setup guides:
### Popular Choices 🌟
- [ProtonVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/protonvpn.md) (Recommended! Easy to set up and great privacy)
- [Mullvad](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/mullvad.md)
- [NordVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/nordvpn.md)
- [Private Internet Access](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/private-internet-access.md)
- [Surfshark](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/surfshark.md)
### Full Provider List 📋
- [AirVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/airvpn.md)
- [Cyberghost](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/cyberghost.md)
- [ExpressVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/expressvpn.md)
@ -19,16 +31,11 @@ YAMS uses [gluetun](https://github.com/qdm12/gluetun) for VPN.
- [Hidemyass](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/hidemyass.md)
- [IPVanish](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/ipvanish.md)
- [IVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/ivpn.md)
- [Mullvad](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/mullvad.md) **(Recommended!)**
- [NordVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/nordvpn.md)
- [Perfect privacy](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/perfect-privacy.md)
- [Perfect Privacy](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/perfect-privacy.md)
- [Privado](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/privado.md)
- [Private internet access](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/private-internet-access.md)
- [PrivateVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/privatevpn.md)
- [ProtonVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/protonvpn.md)
- [PureVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/purevpn.md)
- [SlickVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/slickvpn.md)
- [Surfshark](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/surfshark.md)
- [Torguard](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/torguard.md)
- [VPN Secure](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/vpn-secure.md)
- [VPN Unlimited](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/vpn-unlimited.md)
@ -36,58 +43,76 @@ YAMS uses [gluetun](https://github.com/qdm12/gluetun) for VPN.
- [WeVPN](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/wevpn.md)
- [Windscribe](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/windscribe.md)
You can also set up a [custom VPN provider](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/custom.md), but **this is not officially supported for YAMS. You are on your own here.**
Want to use a different VPN? You can set up a [custom VPN provider](https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/custom.md), but keep in mind this isn't officially supported by YAMS. You'll be in DIY territory! 🛠️
## Manual configuration
## Manual Configuration 🔧
To manually configure your VPN, you have to edit your `docker-compose.yaml` file.
Let's walk through setting up your VPN manually. For this guide, I'll assume your YAMS is installed in `/opt/yams` - adjust the paths if you installed it somewhere else!
First, stop `YAMS`:
### Step 1: Stop YAMS
```bash
$ yams stop
yams stop
```
Then, open your `docker-compose.yaml` file. For this tutorial, I'm assuming the install location is `/opt/yams`. Also, you don't have to use `vim`, you can use `nano` or any other editor.
### Step 2: Configure Your VPN Settings
Open your `.env` file:
```bash
$ vim /opt/yams/docker-compose.yaml
nano /opt/yams/.env
```
On the file, find the `qbitorrent` config and make the following changes:
Find the VPN section and update it:
```bash
# VPN configuration
VPN_ENABLED=y
VPN_SERVICE=protonvpn # Your VPN service from the list above
VPN_USER=your-username # Your VPN username
VPN_PASSWORD=your-pass # Your VPN password
```
### Step 3: Update Docker Compose
Open `docker-compose.yaml`:
```bash
nano /opt/yams/docker-compose.yaml
```
Find the qBittorrent section and make these changes:
```yaml
...
# ports: # qbittorrent -> Comment this line
# - 8080:8080 # qbittorrent -> Comment this line
network_mode: "service:gluetun" -> Uncomment this line
qbittorrent:
# ports: # Comment out these lines
# - 8081:8081
network_mode: "service:gluetun" # Uncomment this line
```
Then, at the bottom, find the `gluetun` config and make the following changes:
Find the SABnzbd section and make similar changes:
```yaml
...
- 8080:8080/tcp # gluetun -> Uncomment this line
...
environment:
- VPN_SERVICE_PROVIDER=<vpn_service> # -> Replace "<vpn_service>" with your VPN service provider
- VPN_TYPE=openvpn
- OPENVPN_USER=<vpn_user> # -> Replace "<vpn_user>" with your VPN username
- OPENVPN_PASSWORD=<vpn_password> # -> Replace "<vpn_password>" with your VPN password
sabnzbd:
# ports: # Comment out these lines
# - 8080:8080
network_mode: "service:gluetun" # Uncomment this line
```
Now, restart `YAMS`:
```bash
$ yams restart
At the bottom, find the gluetun section and uncomment these ports:
```yaml
gluetun:
ports:
- 8080:8080/tcp # Uncomment this line
- 8081:8081/tcp # Uncomment this line
```
Finally, check that your VPN is running correctly:
### Step 4: Restart and Test
```bash
$ yams check-vpn
yams restart
```
### Step 5: Verify Everything Works
```bash
yams check-vpn
```
You should see something like:
```bash
Getting your qBittorrent IP...
<your_qbittorrent_ip>
<qbittorrent_ip>
Your country in qBittorrent is Brazil
Getting your IP...
@ -97,8 +122,43 @@ Your local IP country is North Korea
Your IPs are different. qBittorrent is working as expected! ✅
```
If it's not running correctly, check every setting and make sure they are all correct.
If you get an error, double-check all your settings and make sure they're correct!
## Double-check your torrent client IP address
## Pro Tips 🎯
Go [here](/advanced/torrenting/#double-checking-your-torrent-client-ip-address).
1. **Regular Checks**: Run `yams check-vpn` periodically to make sure your VPN is working correctly
2. **Kill Switch**: YAMS automatically includes a kill switch - if the VPN goes down, your downloads stop too!
3. **Speed Matters**: Choose a VPN server that's relatively close to you for better download speeds
4. **Port Problems**: If you can't access qBittorrent after setting up the VPN, check the troubleshooting section below
## Troubleshooting 🔧
### Common Issues:
1. **Can't access qBittorrent:**
- Check gluetun logs: `docker logs gluetun`
- Verify your VPN credentials
- Make sure ports are configured correctly
2. **VPN keeps disconnecting:**
- Try a different VPN server
- Check your internet connection
- Review the gluetun logs for errors
3. **Slow speeds:**
- Try a server closer to your location
- Check if your VPN provider throttles P2P traffic
- Some providers have specialized servers for torrenting - try those!
## Need Extra Security? 🛡️
Want to double-check that your torrent client is really using the VPN? Head over to [Double-checking your torrent client IP address](/advanced/torrenting/#double-checking-your-torrent-client-ip-address) for a detailed guide!
## Still Need Help? 🆘
If you're stuck:
1. Check our [Common Issues](/faqs/common-errors/#gluetun-does-not-connect) page
2. Visit the [YAMS Forum](https://forum.yams.media)
3. Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
Remember: A working VPN is crucial for safe downloading. Take the time to set it up right, and you'll be good to go! 🚀

View File

@ -4,6 +4,8 @@ date: 2023-01-10T19:25:57-03:00
draft: false
---
This site includes instructions for a **basic** configuration. I recommend you follow the order of the configurations, they will all make sense in the end!
This site includes instructions for a **basic** configuration. I recommend you follow the order of the configurations - everything will make sense in the end!
All the pictures in the tutorials are in high resolution. In case you can't read one of the instructions, you can click on them anytime to see the full image.
All the pictures in the tutorials are in high resolution. If you can't read something in an instruction, just click on the image to see the full-size version!
Let's get started! 🚀

View File

@ -12,7 +12,7 @@ From their [website](https://www.bazarr.media/):
> Bazarr is a companion application to Sonarr and Radarr that manages and downloads subtitles based on your requirements.
In YAMS, Bazarr is going to download subtitles on any language you choose, sort them and put them in the correct location for Emby to grab.
In YAMS, Bazarr is your subtitle superstar! 🌟 It's going to download subtitles in any language you choose, sort them, and put them right where Emby/Jellyfin/Plex can find them. No more hunting for subtitles manually!
## Initial Configuration
@ -20,162 +20,160 @@ In your browser, go to [http://{your-ip-address}:6767/]() and you'll see Bazarr'
[![bazarr-1](/pics/bazarr-1.png)](/pics/bazarr-1.png)
You don't have to change anything on this screen.
The default settings here are fine - no need to change anything yet!
### Languages
On the left side menu, click on "Languages".
On the left side menu, click on "Languages". This is where the fun begins! 🎬
On the "Languages" page, go to the "Languages Filter" box and select the languages you want to use. For this tutorial, I will choose `English`, `Spanish`, and `Latin American Spanish`.
In the "Languages Filter" box, pick all the languages you want subtitles for. For this tutorial, I'm going with:
- `English` (because why not?)
- `Spanish` (¿por qué no?)
- `Latin American Spanish` (different flavor, same great taste!)
When you have chosen your languages, click on "Add New Profile"
After choosing your languages, click on "Add New Profile"
[![bazarr-2](/pics/bazarr-2.png)](/pics/bazarr-2.png)
Now, on the "Edit Languages Profile" modal, add a name (it can be whatever you want), and click on "Add Language".
In the "Edit Languages Profile" modal:
1. Give your profile a name (anything you want!)
2. Click on "Add Language"
3. **Important:** Click "Add Language" once for EACH language you picked earlier!
**Note: You have to click on "Add language" once per each language you added in the last step**.
Since I picked 3 languages earlier, I need to click "Add Language" three times. Math! 🧮
Since I added 3 languages (`English`, `Spanish`, and `Latin American Spanish`), I'm going to add 3 languages on the modal.
When you are done, you can click on "Save" at the bottom.
When you're done, click "Save" at the bottom.
[![bazarr-3](/pics/bazarr-3.png)](/pics/bazarr-3.png)
Back at the "Languages" page, you can set your new "Language Profile" as the default for Series and Movies.
Back on the "Languages" page, set your new profile as the default for both Series and Movies.
[![bazarr-4](/pics/bazarr-4.png)](/pics/bazarr-4.png)
In the end, you should have something similar to this:
You should end up with something like this:
[![bazarr-5](/pics/bazarr-5.png)](/pics/bazarr-5.png)
If you are happy with the configuration, click on "Save" at the top of the page.
Happy with how it looks? Hit "Save" at the top of the page!
[![bazarr-6](/pics/bazarr-6.png)](/pics/bazarr-6.png)
### Providers
On the left side menu, click on "Providers". You'll see the empty providers page. To add providers, click on the big sign.
Time to tell Bazarr where to find those subtitles! Click on "Providers" in the left menu, then click that big sign.
[![bazarr-7](/pics/bazarr-7.png)](/pics/bazarr-7.png)
Here, you can search from a LOT of providers! They even include a little description so you know what they are.
You'll see a HUGE list of providers - and they even include descriptions! How thoughtful! 📚
[![bazarr-8](/pics/bazarr-8.png)](/pics/bazarr-8.png)
For this tutorial, I'll just add [OpenSubtitles.org](https://www.opensubtitles.org/en/search/subs), but you can add more later.
For this tutorial, we'll just add [OpenSubtitles.org](https://www.opensubtitles.org/en/search/subs), but feel free to add more later! The more providers you have, the better chance of finding perfect subtitles.
Some of the providers might ask you for a username and password. If you don't have an account for OpenSubtitles.org yet, create it.
Some providers (including OpenSubtitles.org) need a username and password. If you don't have an account yet, go ahead and create one - I'll wait! ⏳
After entering your login information, click on "Save"
Got your login info? Great! Enter it and click "Save"
[![bazarr-9](/pics/bazarr-9.png)](/pics/bazarr-9.png)
Now, you'll see OpenSubtitles.org as a new provider for Bazarr! If you are happy with the changes, click on "Save" at the top of the page.
Now you'll see OpenSubtitles.org in your providers list! Click "Save" at the top of the page if you're happy with the changes.
[![bazarr-10](/pics/bazarr-10.png)](/pics/bazarr-10.png)
### Subtitles
On the left side menu, click on "Subtitles" and scroll down to "Performance / Optimization". There, you should disable "Use Embedded Subtitles".
Click on "Subtitles" in the left menu and scroll down to "Performance / Optimization".
A little down, you'll see the "Post-Processing" settings. Enable:
First thing to do: Disable "Use Embedded Subtitles". We want our subtitles free-range, not caged! 🐓
- "Encode Subtitles to UTF8".
- "Hearing Impaired".
- "Remove Tags".
- "OCR Fixes".
- "Common Fixes".
- "Fix Uppercase"
A bit further down, you'll find "Post-Processing". Enable these options:
- "Encode Subtitles to UTF8" (keeps everything readable)
- "Hearing Impaired" (removes those [DOOR CREAKS] descriptions)
- "Remove Tags" (cleans up formatting)
- "OCR Fixes" (fixes common scanning errors)
- "Common Fixes" (fixes... common stuff! 😅)
- "Fix Uppercase" (NO MORE SHOUTING IN SUBTITLES)
[![bazarr-11](/pics/bazarr-11.png)](/pics/bazarr-11.png)
Now, scroll all the way to the bottom and enable:
Now scroll aaaaaall the way to the bottom and enable:
- "Automatic Subtitles Synchronization"
- Set both "Series Score Threshold" and "Movies Score Threshold" to 50
- "Automatic Subtitles Synchronization".
- "Series Score Threshold" and set it to 50.
- "Movies Score Threshold" and set it to 50.
I've found that with a threshold of 50, Bazarr can still find good subtitles and synchronize them if necessary. You can tune this if you want.
Why 50? I've found it's a good balance - Bazarr can still find good subtitles but won't use terrible ones. Feel free to adjust this if you want to be more or less picky!
[![bazarr-12](/pics/bazarr-12.png)](/pics/bazarr-12.png)
If you are happy with the changes, click on "Save" at the top of the page.
Happy with your settings? Hit "Save" at the top!
[![bazarr-13](/pics/bazarr-13.png)](/pics/bazarr-13.png)
### Sonarr
### Connecting to Sonarr
This is how you will tie in Bazarr with [Sonarr](/config/sonarr).
Time to link Bazarr with [Sonarr](/config/sonarr)! First, we need Sonarr's API key.
First, you are going to need your Sonarr API Key.
You can get your Sonarr API Key in Sonarr. Go to [http://{your-ip-address}:8989/settings/general]() to open Sonarr's settings, and you'll find the API Key under the "Security" section.
Head to [http://{your-ip-address}:8989/settings/general]() and find the API Key under "Security".
[![bazarr-14](/pics/bazarr-14.png)](/pics/bazarr-14.png)
For now, just copy it and keep it in a safe location.
Copy that key and keep it safe!
Now, back at Bazarr on the left side menu, click on "Sonarr".
Back in Bazarr, click on "Sonarr" in the left menu.
Sonarr is disabled by default. To begin, enable Sonarr. A lot of new options will appear, but you only have to change a few.
By default, Sonarr is disabled. Let's fix that! Enable Sonarr and you'll see lots of new options. Don't panic - you only need to change a few:
- On Address, set `sonarr`.
- On API Key, just paste Sonarr's API Key.
- Click on "Test"
- Address: set to `sonarr`
- API Key: paste in Sonarr's API Key
- Click "Test"
If everything worked, you should see your current Sonarr version on the button!
If everything's working, you'll see your Sonarr version on the button! 🎉
[![bazarr-15](/pics/bazarr-15.png)](/pics/bazarr-15.png)
To finish, click on "Save" at the top of the page.
Click "Save" at the top of the page to finish up.
[![bazarr-16](/pics/bazarr-16.png)](/pics/bazarr-16.png)
After saving, you'll see how the "Series" section appears on the left side menu!
Magic time! The "Series" section should appear in your left menu! ✨
[![bazarr-19](/pics/bazarr-19.png)](/pics/bazarr-19.png)
### Radarr
### Connecting to Radarr
This is how you will tie in Bazarr with [Radarr](/config/radarr).
Now let's connect to [Radarr](/config/radarr)! First step: get that API key.
First, you are going to need your Radarr API Key.
You can get your Radarr API Key in Radarr. Go to [http://{your-ip-address}:7878/settings/general]() to open Radarr's settings, and you'll find the API Key under the "Security" section.
Go to [http://{your-ip-address}:7878/settings/general]() and find the API Key under "Security".
[![bazarr-17](/pics/bazarr-17.png)](/pics/bazarr-17.png)
For now, just copy it and keep it in a safe location.
Copy that key and keep it handy!
Now, back at Bazarr on the left side menu, click on "Radarr".
Back in Bazarr, click "Radarr" in the left menu.
Radarr is disabled by default. To begin, enable Radarr. A lot of new options will appear, but you only have to change a few.
Just like with Sonarr, Radarr is disabled by default. Enable it and fill in:
- Address: set to `radarr`
- API Key: paste in Radarr's API Key
- Click "Test"
- On Address, set `radarr`.
- On API Key, just paste Radarr's API Key.
- Click on "Test"
If everything worked, you should see your current Radarr version on the button!
If the test works, you'll see your Radarr version on the button! 🎯
[![bazarr-18](/pics/bazarr-18.png)](/pics/bazarr-18.png)
To finish, click on "Save" at the top of the page.
Click "Save" at the top to wrap things up.
[![bazarr-20](/pics/bazarr-20.png)](/pics/bazarr-20.png)
After saving, you'll see how the "Movies" section appears on the left side menu!
More magic! The "Movies" section appears in your left menu! ✨
[![bazarr-21](/pics/bazarr-21.png)](/pics/bazarr-21.png)
### All done!
### Almost there! 🏃‍♂️
Only one more step left! Continue with your media service. Depending on what you chose, you can move forward with:
- [Jellyfin](/config/jellyfin).
- [Emby](/config/emby).
- [Plex](/config/plex).
Just one last step! Time to set up your media service. Pick your path:
- [Jellyfin](/config/jellyfin)
- [Emby](/config/emby)
- [Plex](/config/plex)
## Do you want a more in depth configuration?
## Want to become a subtitle master? 🎓
If you want a more in depth configuration, I recommend you check the [TRaSH Guide for Bazarr](https://trash-guides.info/Bazarr/).
If you want to really dive into Bazarr's settings, check out the [TRaSH Guide for Bazarr](https://trash-guides.info/Bazarr/). They've got some amazing advanced configurations in there!

View File

@ -1,76 +0,0 @@
---
title: "Easy mode"
date: 2023-01-13T15:37:32-03:00
draft: false
weight: 1
summary: Easy initial configuration for YAMS. This is only intended for people that know what they are doing! If this is the first time you are configuring YAMS or it's the first time you are using any of the programs in YAMS, **⚠️ don't enter here! ⚠️**
---
# ⚠️ This is intended for experts! ⚠️ You have been warned.
I **strongly recommend** you configure everything yourself by following the tutorial. That way, you'll know what everything does and how everything is connected.
If this is your first time configuring YAMS, and want to go through the full manual configuration, go to [qBittorrent](/config/qbittorrent) and start the configuration **(Recommended)**.
If this is not your first time configuring YAMS, or you already know how to use all the software included, you can move forward.
# Installation
If you go back to the [folder where you cloned YAMS](/install/steps/#cloning-from-gitlab), you'll see there's a folder called `base` with a `tar.gz` file called `base-config.tar.gz`.
`base-config.tar.gz` has a bare-bones configuration for YAMS. With it, you'll have YAMS configured at 100%, just like if you followed the configuration tutorial.
To apply the configuration, first go to your YAMS install location. For the purposes of this tutorial, let's say you installed it on the recommended location of `/opt/yams`.
```bash
$ cd /opt/yams
```
On your YAMS install location, if you run an `ls` you'll see you have a `config/` folder. `cd` into it and you'll find all the configuration files for each of the apps included with YAMS.
```bash
/opt/yams$ ls
config docker-compose.yaml
/opt/yams$ cd config
/opt/yams/config$ ls
bazarr emby prowlarr qbittorrent radarr sonarr
```
Now, shut down `yams`
```bash
/opt/yams/config$ yams stop
```
Then, `rm -r` all the files on the `config` folder:
```bash
/opt/yams/config$ rm -r *
```
To finish, extract the base file in your config folder. Remember to replace `{your-yams-clone-location}` with the real location within your filesystem:
```bash
/opt/yams/config$ tar -xzvf {your-yams-clone-location}/base/base-config.tar.gz
```
If you `ls` now, you'll see all the folders were extracted and are available again
```bash
/opt/yams/config$ ls
bazarr emby prowlarr qbittorrent radarr sonarr
```
To restart `yams`, run:
```bash
/opt/yams/config$ yams start
```
## Default usernames and passwords
If anything asks you for an username and password, the defaults are:
- username: admin
- password: 12345
And that's it! You should have everything configured and running from zero. You can now jump to [Running everything together](/config/running-everything-together/).

View File

@ -9,118 +9,127 @@ summary: Emby brings together your personal videos, music, photos, and live tele
# What is Emby?
From their [website](https://emby.media/about.html)
From their [website](https://emby.media/about.html):
> Emby brings together your personal videos, music, photos, and live television. (...) Emby Server automatically converts and streams your personal media on the fly to play on any device.
On YAMS, Emby is one of the most important parts: Emby is going to be your "Netflix", "Hulu" or "Amazon Prime". This means you'll be able to stream your TV shows and movies to any device using Emby.
In YAMS, Emby is your streaming service superstar! 🌟 Just like Netflix or Amazon Prime, Emby lets you stream all your media to any device. The best part? You're in complete control!
## Initial configuration
In your browser, go to [http://{your-ip-address}:8096/]() and you'll see Emby's setup page.
Choose your display language and click on "Next".
First up, pick your display language and click on "Next".
[![emby-1](/pics/emby-1.png)](/pics/emby-1.png)
Now, create your first user. When you are done, click on "Next".
Time to create your first user! This will be your admin account, so make it a good one. When you're done, click "Next".
[![emby-2](/pics/emby-2.png)](/pics/emby-2.png)
Next, on the "Setup Media Libraries" page, click on "New Library".
Now we're at the "Setup Media Libraries" page. Click on "New Library" - let's tell Emby where all your awesome content lives! 🎬
[![emby-3](/pics/emby-3.png)](/pics/emby-3.png)
### Setting the "TV Shows" library
### Setting up your TV Shows library
On the "New Library" modal, select "TV shows" as your Content type and click on the big sign next to "Folders".
On the "New Library" modal, pick "TV shows" as your Content type and click that big sign next to "Folders".
[![emby-4](/pics/emby-4.png)](/pics/emby-4.png)
In "Select Path", select the folder `/data/tvshows` and click on "Ok"
In "Select Path", choose the `/data/tvshows` folder and click "Ok"
[![emby-5](/pics/emby-5.png)](/pics/emby-5.png)
**Note:** This is NOT on your filesystem! The `/data/tvshows/` folder exists inside the `docker` environment and maps to your server `/mediafolder/tv/` folder!
**Docker Magic Note:** 🎩 Don't worry if this path looks weird! The `/data/tvshows/` folder exists inside the docker environment and maps to your server's `/mediafolder/tv/` folder. It's all connected behind the scenes!
You should see your recently added folder in the "New Library" modal.
You'll see your newly added folder in the modal:
[![emby-6](/pics/emby-6.png)](/pics/emby-6.png)
Finally, set your metadata language to your favorite language. All the default settings that follow are fine, but you can change them if you want.
Pick your preferred metadata language. All the default settings are good to go, but feel free to tweak them if you want to get fancy!
Your "New Library" screen should look like this:
Your "New Library" screen should look something like this:
[![emby-7](/pics/emby-7.png)](/pics/emby-7.png)
If you are okay with the settings, click on "Ok". Your library should be added now!
Happy with how it looks? Click "Ok". Your TV Shows library is ready for action! 📺
[![emby-8](/pics/emby-8.png)](/pics/emby-8.png)
### Setting up your Movies library
### Setting the "Movies" library
Let's do that one more time! Click "New Library" again.
Open the "New Library modal" again.
On the "New Library" modal, select "Movies" as your Content type and click on the big sign next to "Folders".
This time, pick "Movies" as your Content type and click the next to "Folders".
[![emby-9](/pics/emby-9.png)](/pics/emby-9.png)
In "Select Path", select the folder `/data/movies` and click on "Ok"
Choose the `/data/movies` folder and click "Ok"
[![emby-10](/pics/emby-10.png)](/pics/emby-10.png)
**Note:** This is NOT on your filesystem! The `/data/movies/` folder exists inside the `docker` environment and maps to your server `/mediafolder/movies/` folder!
**More Docker Magic:** ✨ Just like before, `/data/movies/` is actually mapping to your server's `/mediafolder/movies/` folder. Docker is doing its thing!
You should see your recently added folder in the "New Library" modal.
Your folder should show up in the modal:
[![emby-11](/pics/emby-11.png)](/pics/emby-11.png)
Finally, set your metadata language to your favorite language. All the default settings that follow are fine, but you can change them if you want.
Set your preferred metadata language again. The defaults are still your friend here!
Your "New Library" screen should look like this:
The screen should look something like this:
[![emby-12](/pics/emby-12.png)](/pics/emby-12.png)
If you are okay with the settings, click on "Ok". Your library should be added now!
All set? Click "Ok". Your Movies library is now ready! 🎬
[![emby-13](/pics/emby-13.png)](/pics/emby-13.png)
To finish, click on the "Next" button.
Time to move forward - click that "Next" button!
[![emby-14](/pics/emby-14.png)](/pics/emby-14.png)
### Continuing the setup
### Wrapping up the setup
On the "Preferred Metadata Language" page, you can choose the language and country of your metadata. Choose your preferred language and country and click "Next".
On the "Preferred Metadata Language" page, pick your language and country preferences, then click "Next".
[![emby-15](/pics/emby-15.png)](/pics/emby-15.png)
Next, on the "Configure Remote Access" page, disable "Enable automatic port mapping" and click on "Next".
For the "Configure Remote Access" page, let's keep things simple and secure:
- Disable "Enable automatic port mapping"
- Click "Next"
[![emby-16](/pics/emby-16.png)](/pics/emby-16.png)
Accept the terms of service and click on "Next".
Time to accept the terms of service (you read those, right? 😉). Click "Next".
[![emby-17](/pics/emby-17.png)](/pics/emby-17.png)
And you are finally done! Click on "Finish" to go to your Emby dashboard.
You're all done! Click "Finish" to see your new Emby dashboard. 🎉
[![emby-18](/pics/emby-18.png)](/pics/emby-18.png)
### Logging in to Emby
On the "Please Sign In" screen, select your user and log in with the username/password you set in the [Initial configuration](#initial-configuration) step.
First up, pick your user and log in with the credentials you created earlier.
[![emby-19](/pics/emby-19.png)](/pics/emby-19.png)
[![emby-20](/pics/emby-20.png)](/pics/emby-20.png)
And there it is! Your Emby home page is up and running!
And there it is! Your very own streaming service, ready to go! 🌟
[![emby-21](/pics/emby-21.png)](/pics/emby-21.png)
## That's all!
## That's all folks! 🎬
YAMS is fully up and running! Now, let's add some content. Move on to [Running everything together](/config/running-everything-together).
YAMS is fully up and running! Want to see how everything works together? Head over to [Running everything together](/config/running-everything-together).
## Pro Tip! 💡
If you're loving Emby, I highly recommend checking out [Emby Premiere](https://emby.media/premiere.html)! It's totally optional, but it gives you some really cool features like:
- Offline media for your devices
- Hardware transcoding (smoother playback!)
- Auto-conversion of your content
- And lots more!
I actually canceled all my streaming services, bought a 1-year Emby Premiere license, and never looked back. Just saying! 😉

View File

@ -8,112 +8,109 @@ summary: Jellyfin is the volunteer-built media solution that puts you in control
# What is Jellyfin?
From their [website](https://jellyfin.org/)
From their [website](https://jellyfin.org/):
> Jellyfin is the volunteer-built media solution that puts you in control of your media. Stream to any device from your own server, with no strings attached. Your media, your server, your way.
On YAMS, Jellyfin is one of the most important parts: Jellyfin is going to be your "Netflix", "Hulu" or "Amazon Prime". This means you'll be able to stream your TV shows and movies to any device using Jellyfin. Best part: Is 100% open source!
In YAMS, Jellyfin is going to be your personal Netflix! 🍿 It's 100% open source and lets you stream your TV shows and movies to any device. Best part? No monthly fees!
## Initial configuration
In your browser, go to [http://{your-ip-address}:8096/]() and you'll see Jellyfin's setup page.
Choose your display language and click on "Next".
First things first - pick your display language and click "Next".
[![jellyfin-1](/pics/jellyfin-1.png)](/pics/jellyfin-1.png)
Now, create your first user. When you are done, click on "Next".
Time to create your first user! This will be your admin account, so make it secure. When you're done, click "Next".
[![jellyfin-2](/pics/jellyfin-2.png)](/pics/jellyfin-2.png)
Next, on the "Setup Media Libraries" page, click on "New Library".
Now we're at the "Setup Media Libraries" page. Click on "New Library" - let's tell Jellyfin where to find all your media! 📚
[![jellyfin-3](/pics/jellyfin-3.png)](/pics/jellyfin-3.png)
### Setting the "TV Shows" library
### Setting up your TV Shows library
On the "New Library" modal, select "Shows" as your Content type and click on the big sign next to "Folders".
On the "New Library" modal, pick "Shows" as your Content type and click the big sign next to "Folders".
[![jellyfin-4](/pics/jellyfin-4.png)](/pics/jellyfin-4.png)
In "Select Path", select the folder `/data/tvshows` and click on "Ok"
In "Select Path", choose the `/data/tvshows` folder and click "Ok"
[![jellyfin-5](/pics/jellyfin-5.png)](/pics/jellyfin-5.png)
**Note:** This is NOT on your filesystem! The `/data/tvshows/` folder exists inside the `docker` environment and maps to your server `/mediafolder/tv/` folder!
**Magic Container Note:** 🎩 The `/data/tvshows/` folder isn't actually on your filesystem - it's a special path inside the docker environment that maps to your server's `/mediafolder/tv/` folder!
You should see your recently added folder in the "New Library" modal.
You should see your new folder all ready to go in the modal:
[![jellyfin-6](/pics/jellyfin-6.png)](/pics/jellyfin-6.png)
Finally, set your metadata language to your favorite language. All the default settings that follow are fine, but you can change them if you want.
Now set your preferred metadata language. The other default settings are fine, but feel free to tweak them if you want to get fancy!
Your "New Library" screen should look like this:
Your setup should look something like this:
[![jellyfin-7](/pics/jellyfin-7.png)](/pics/jellyfin-7.png)
If you are okay with the settings, click on "Ok". Your library should be added now!
Happy with the settings? Click "Ok". Your TV Shows library is now added! 📺
[![jellyfin-8](/pics/jellyfin-8.png)](/pics/jellyfin-8.png)
### Setting up your Movies library
### Setting the "Movies" library
Time for round two! Click that "New Library" button again.
Open the "New Library modal" again.
On the "New Library" modal, select "Movies" as your Content type and click on the big sign next to "Folders".
This time, pick "Movies" as your Content type and click the next to "Folders".
[![jellyfin-9](/pics/jellyfin-9.png)](/pics/jellyfin-9.png)
In "Select Path", select the folder `/data/movies` and click on "Ok"
Choose the `/data/movies` folder and click "Ok"
[![jellyfin-10](/pics/jellyfin-10.png)](/pics/jellyfin-10.png)
**Note:** This is NOT on your filesystem! The `/data/movies/` folder exists inside the `docker` environment and maps to your server `/mediafolder/movies/` folder!
**More Container Magic:** 🎩✨ Just like before, `/data/movies/` is a special docker path that maps to your server's `/mediafolder/movies/` folder!
You should see your recently added folder in the "New Library" modal.
You should see your movies folder ready to go:
[![jellyfin-11](/pics/jellyfin-11.png)](/pics/jellyfin-11.png)
Finally, set your metadata language to your favorite language. All the default settings that follow are fine, but you can change them if you want.
Set your preferred metadata language again. Default settings are still your friend here!
Your "New Library" screen should look like this:
Your setup should look like this:
[![jellyfin-12](/pics/jellyfin-12.png)](/pics/jellyfin-12.png)
If you are okay with the settings, click on "Ok". Your library should be added now!
Looking good? Click "Ok". Your Movies library is now added! 🎬
[![jellyfin-13](/pics/jellyfin-13.png)](/pics/jellyfin-13.png)
To finish, click on the "Next" button.
Time to move forward - click that "Next" button!
[![jellyfin-14](/pics/jellyfin-14.png)](/pics/jellyfin-14.png)
### Continuing the setup
### Final Setup Steps
On the "Preferred Metadata Language" page, you can choose the language and country of your metadata. Choose your preferred language and country and click "Next".
On the "Preferred Metadata Language" page, pick your favorite language and country. Then click "Next".
[![jellyfin-15](/pics/jellyfin-15.png)](/pics/jellyfin-15.png)
Next, on the "Set up Remote Access" page, disable "Allow remote connections to this server" and click on "Next".
For the "Set up Remote Access" page, let's keep things simple - disable "Allow remote connections to this server" and click "Next".
[![jellyfin-16](/pics/jellyfin-16.png)](/pics/jellyfin-16.png)
And you are finally done! Click on "Finish" to go to your Jellyfin dashboard.
You're done! Click "Finish" to head to your shiny new Jellyfin dashboard. 🎉
[![jellyfin-17](/pics/jellyfin-17.png)](/pics/jellyfin-17.png)
### Logging in to Jellyfin
On the "Please Sign In" screen, log in with the username/password you set in the [Initial configuration](#initial-configuration) step.
Time to test drive your new setup! On the login screen, use the username and password you created earlier.
[![jellyfin-18](/pics/jellyfin-18.png)](/pics/jellyfin-18.png)
And there it is! Your Jellyfin home page is up and running!
And there it is! Your very own streaming service homepage! 🌟
[![jellyfin-19](/pics/jellyfin-19.png)](/pics/jellyfin-19.png)
## That's all!
## That's all folks! 🎬
YAMS is fully up and running! Now, let's add some content. Move on to [Running everything together](/config/running-everything-together).
YAMS is now fully up and running! Ready to add some content? Move on to [Running everything together](/config/running-everything-together) to see how all these pieces work together!

View File

@ -3,6 +3,7 @@ title: "Plex"
date: 2023-01-23T13:59:59-03:00
draft: false
weight: 9
summary: Plex is a media streaming platform that organizes your personal media library and lets you stream it anywhere, plus access live TV, movies, and shows.
---
# What is Plex?
@ -11,152 +12,150 @@ From their [website](https://www.plex.tv/):
> With our free app you can add, access, and share all the entertainment that matters to you, on almost any device—including your own personal media collection. Guess that makes us the hardest working app in show business.
On YAMS, Plex is one of the most important parts: Plex is going to be your "Netflix", "Hulu" or "Amazon Prime". This means you'll be able to stream your TV shows and movies to any device using Plex.
In YAMS, Plex is going to be your streaming service powerhouse! 🌟 It's like having your own Netflix, but with way more control. Plus, sharing with friends and family is super easy!
## First steps
To start, you need to allow your IP range to access the Plex setup. In your server, first stop YAMS.
Before we dive in, we need to do a bit of setup magic to let Plex work its charms. First, stop YAMS:
```bash
$ yams stop
```
Now, go to your Plex config in YAMS. For the purposes of this tutorial, I'm asuming your install location is `/opt/yams`.
Now, let's allow your IP range to access Plex. Head to your Plex config folder (I'm assuming your install location is `/opt/yams` - adjust if you used a different path):
```bash
$ cd /opt/yams/config/plex/Library/Application\ Support/Plex\ Media\ Server/
```
Inside that folder, open `Preferences.xml`.
Inside that folder, we need to edit `Preferences.xml`:
```bash
/opt/yams/config/plex/Library/Application Support/Plex Media Server$ vim Preferences.xml
$ vim Preferences.xml
```
(you don't have to use `vim`, you can use `nano` if you want to).
(Don't worry if you're not a vim fan - `nano` works just fine too! 😉)
On the `Preferences.xml` file, add the following **after** the `<Preferences ` directive:
Add this line right after the `<Preferences` part:
```xml
<Preferences allowedNetworks="<your_subnet_IP>/255.255.255.0" ...
```
The `...` is the rest of the XML file, you only have to add the `allowedNetworks` directive.
The `...` means "leave the rest of the file as is" - we're just adding the `allowedNetworks` bit.
### How do you find your subnet IP?
### How do you find your subnet IP? 🤔
This depends on your network configuration, but it _sometimes_ goes with the following rules:
- If your server IP is `192.168.0.100`, your subnet is `192.168.0.0`.
- If your server IP is `10.0.0.25`, your subnet is `10.0.0.0`.
It usually follows these patterns:
- If your server IP is `192.168.0.100`, your subnet is `192.168.0.0`
- If your server IP is `10.0.0.25`, your subnet is `10.0.0.0`
Finally, restart YAMS.
Time to restart YAMS:
```bash
$ yams restart
```
To check if everything is working, you can try by running:
Let's check if everything's working:
```bash
$ docker logs plex
```
If you see something like this:
If you see something like:
```bash
Failed to load preferences at /config/Library/Application Support/Plex Media Server/Preferences.xml
Failed to load preferences at /config/Library/Application Support/Plex Media Server/Preferences.xml
```
It means your `Preferences.xml` is badly formatted. Try to fix it and try again.
It means your `Preferences.xml` needs some fixing - double-check the format and try again!
Once you finish the Preferences config, you can continue.
**Note:** You can read more about this fix here: https://www.truenas.com/community/threads/plex-not-authorized-you-do-not-have-access-to-this-server.96858/.
**Note:** Want to learn more about this setup? Check out this [TrueNAS community thread](https://www.truenas.com/community/threads/plex-not-authorized-you-do-not-have-access-to-this-server.96858/).
## Initial configuration
In your browser, go to [http://{your-ip-address}:32400/web]() and you'll see Plex's setup page. Click on "Got it!" to continue.
In your browser, go to [http://{your-ip-address}:32400/web]() and you'll see Plex's setup page. Click "Got it!" to get started.
[![plex-1](/pics/plex-1.png)](/pics/plex-1.png)
After logging in, you'll see a modal that says "Plex Pass". You can close that.
After logging in, you'll see a "Plex Pass" modal. You can close that for now - we'll get to the good stuff!
[![plex-2](/pics/plex-2.png)](/pics/plex-2.png)
On the "Name" screen, select a name for your server and click on continue.
Give your server a name and click "Next".
[![plex-3](/pics/plex-3.png)](/pics/plex-3.png)
On the "Sync Your Watch State and Ratings" screen, just click "No".
For "Sync Your Watch State and Ratings", just click "No" - keeping things simple!
[![plex-4](/pics/plex-4.png)](/pics/plex-4.png)
Now on "Media Library", click on "Add Library".
Time to add our media! Click "Add Library" on the "Media Library" screen.
[![plex-5](/pics/plex-5.png)](/pics/plex-5.png)
### Adding Movies
On the "Add Library" modal, select "Movies" and click "Next".
Pick "Movies" as your library type and click "Next".
[![plex-6](/pics/plex-6.png)](/pics/plex-6.png)
Now, click on "Browse For Media Folder".
Click "Browse For Media Folder".
[![plex-7](/pics/plex-7.png)](/pics/plex-7.png)
On the "Add Folder" modal, select the movies path (`/data/movies`) and click on "Add".
Choose the movies path (`/data/movies`) and click "Add".
[![plex-8](/pics/plex-8.png)](/pics/plex-8.png)
Your "Add Library" modal should look like this. Finally, click on "Add Library".
Your screen should look like this. Click "Add Library" to finish up!
[![plex-9](/pics/plex-9.png)](/pics/plex-9.png)
### Adding TV Shows
On "Media Library", click on "Add Library".
Back in "Media Library", click "Add Library" again.
[![plex-10](/pics/plex-10.png)](/pics/plex-10.png)
On the "Add Library" modal, select "TV Shows" and click "Next".
This time pick "TV Shows" and click "Next".
[![plex-11](/pics/plex-11.png)](/pics/plex-11.png)
Now, click on "Browse For Media Folder".
Click "Browse For Media Folder" again.
[![plex-7](/pics/plex-7.png)](/pics/plex-7.png)
On the "Add Folder" modal, select the TV Shows path (`/data/tvshows`) and click on "Add".
Choose the TV Shows path (`/data/tvshows`) and click "Add".
[![plex-12](/pics/plex-12.png)](/pics/plex-12.png)
Your "Add Library" modal should look like this. Finally, click on "Add Library".
Looking good? Click "Add Library"!
[![plex-13](/pics/plex-13.png)](/pics/plex-13.png)
In the end, your "Media Library" screen should look like this. If it's okay, click on "Next".
Your "Media Library" screen should now show both libraries. Click "Next" to continue.
[![plex-14](/pics/plex-14.png)](/pics/plex-14.png)
## Finish
## Finishing up
On the "Finish screen", click on "Done".
Almost there! Click "Done" on the finish screen.
[![plex-15](/pics/plex-15.png)](/pics/plex-15.png)
You should see the Plex dashboard now! On the left side panel, click on "More".
Welcome to your Plex dashboard! 🎉 Click on "More" in the left side panel.
[![plex-16](/pics/plex-16.png)](/pics/plex-16.png)
There, you should find your local "Movies" and "TV Shows".
There they are - your local "Movies" and "TV Shows" libraries!
[![plex-17](/pics/plex-17.png)](/pics/plex-17.png)
## That's all!
## That's all folks! 🎬
YAMS is fully up and running! Now, let's add some content. Move on to [Running everything together](/config/running-everything-together).
YAMS is fully up and running! Ready to add some content? Head over to [Running everything together](/config/running-everything-together)!
## Do you want a more in depth configuration?
## Want to become a Plex power user? 💪
If you want a more in depth configuration, I recommend you check the [TRaSH Guide for Plex](https://trash-guides.info/Plex/).
If you want to really dive into what Plex can do, check out the [TRaSH Guide for Plex](https://trash-guides.info/Plex/). They've got some amazing advanced configurations in there!

View File

@ -12,126 +12,140 @@ From their [Github repo](https://github.com/Prowlarr/Prowlarr/):
> Prowlarr is an indexer manager/proxy built on the popular *arr .net/reactjs base stack to integrate with your various PVR apps. Prowlarr supports management of both Torrent Trackers and Usenet Indexers. It integrates seamlessly with Lidarr, Mylar3, Radarr, Readarr, and Sonarr offering complete management of your indexers with no per app Indexer setup required (we do it all).
So basically, we are going to use Prowlarr to **search for torrents**, so we can add them to [qBittorrent](/config/qbittorrent) later on.
So basically, we're going to use Prowlarr to **search for torrents**, and then it will pass those on to [qBittorrent](/config/qbittorrent) to download. Think of it as your personal search engine! 🔍
## Initial configuration
In your browser, go to [http://{your-ip-address}:9696/]() and you'll see the "Authentication required" screen. For now, set it to "Basic" and enter a username and password for Prowlarr
In your browser, go to [http://{your-ip-address}:9696/]() and you'll see the "Authentication required" screen. Let's set up some basic security:
- Select "Forms (Login Page)" as the "Authentication Method"
- In "Authentication Required" select "Disabled for Local Addresses" (so you can browse freely on your home network)
[![prowlarr-1](/pics/prowlarr-1.png)](/pics/prowlarr-1.png)
### Indexers
### Understanding Indexers
On the homepage, click on "Add Nex Indexer"
Before we dive in, let's talk about the two types of indexers you can use with Prowlarr:
#### Usenet Indexers 📰
Most good Usenet indexers are paid services, but they're usually pretty affordable and worth checking out! A couple of popular ones are:
- [DrunkenSlug](https://drunkenslug.com) (invite only!)
- [NZBGeek](https://nzbgeek.info)
Remember, if you want to use Usenet indexers, you'll also need a Usenet provider configured in [SABnzbd](/config/sabnzbd)!
#### Torrent Indexers 🧲
For this tutorial, we'll focus on free torrent indexers since they're easier to get started with. Just remember to always use a VPN when torrenting!
### Adding Indexers
On the homepage, click on "Add Next Indexer" - time to teach Prowlarr where to look for content!
[![prowlarr-2](/pics/prowlarr-2.png)](/pics/prowlarr-2.png)
Now, select your indexers. For the purposes of this tutorial I'll add 2: YTS (for movies) and eztv (for tv shows).
For this tutorial, I'll add two popular indexers: YTS (great for movies) and eztv (perfect for TV shows). But you can add whatever indexers you like!
Look for your indexer and click on it
Find your indexer and click on it:
[![prowlarr-3](/pics/prowlarr-3.png)](/pics/prowlarr-3.png)
You'll get a new modal now, called "Add Indexer - Cardigann (your indexer)". On this screen, just choose a URL from the "Base Url" list.
You'll see a new modal called "Add Indexer - Cardigann (your indexer)". All you need to do here is pick a URL from the "Base Url" list. Easy peasy!
[![prowlarr-4](/pics/prowlarr-4.png)](/pics/prowlarr-4.png)
At the bottom, you can click on "Test" and if everything is OK you should see a ✅
Hit that "Test" button at the bottom - if everything's working, you'll see a happy green checkmark!
[![sonarr-10](/pics/sonarr-10.png)](/pics/sonarr-10.png)
[![sonarr-11](/pics/sonarr-11.png)](/pics/sonarr-11.png)
If everything is fine, click on "Save", and you'll be back at the "Add Indexer" modal.
Looking good? Click "Save" and you'll be back at the "Add Indexer" modal.
You can now add more indexers. Add as many as you like!
#### How many indexers should I add? 🤔
#### How many indexers can I have?
As many as you want! Just repeat the steps to add new indexers in Prowlarr. The more indexers you have, the better!
As many as you want! Just repeat those steps for each new indexer in Prowlarr. The more indexers you have, the better chance of finding what you're looking for! It's like having more libraries to check for books. 📚
When you finish, close the "Add Indexer" modal and you'll see all your indexers on the main page
When you're done adding indexers, close the modal and you'll see all your indexers on the main page:
[![prowlarr-5](/pics/prowlarr-5.png)](/pics/prowlarr-5.png)
### Connecting to Radarr and Sonarr
Now comes the fun part: Connecting Prowlarr to Radarr and Sonarr!
Now comes the fun part - connecting Prowlarr to Radarr and Sonarr! This is where everything starts working together. ✨
#### Radarr
#### Radarr Connection
First, you are going to need your Radarr API Key.
You can get your Radarr API Key in Radarr. Go to [http://{your-ip-address}:7878/settings/general]() to open Radarr's settings, and you'll find the API Key under the "Security" section.
First, we need your Radarr API Key. Head over to Radarr's settings at [http://{your-ip-address}:7878/settings/general]() and look for the API Key under "Security".
[![bazarr-17](/pics/bazarr-17.png)](/pics/bazarr-17.png)
For now, just copy it and keep it in a safe location.
Copy that API key and keep it handy!
In "Settings", go to "Apps" and click on the button.
In Prowlarr, go to "Settings", click "Apps" and hit the button.
[![prowlarr-6](/pics/prowlarr-6.png)](/pics/prowlarr-6.png)
On the "Add Application" modal, click on "Radarr"
Click on "Radarr":
[![prowlarr-7](/pics/prowlarr-7.png)](/pics/prowlarr-7.png)
- In "Prowlarr Server", add `http://prowlarr:9696`
- In "Radarr Server", add `http://radarr:7878`
- In "ApiKey", add your Radarr API key.
Fill in these details:
- Prowlarr Server: `http://prowlarr:9696`
- Radarr Server: `http://radarr:7878`
- API Key: paste your Radarr API key here
[![prowlarr-8](/pics/prowlarr-8.png)](/pics/prowlarr-8.png)
At the bottom, you can click on "Test" and if everything is OK you should see a
Test time! Click that "Test" button - hopefully you'll see a green checkmark!
[![sonarr-10](/pics/sonarr-10.png)](/pics/sonarr-10.png)
[![sonarr-11](/pics/sonarr-11.png)](/pics/sonarr-11.png)
To finish, click on "Save". You should see Radarr added to the "Apps" list!
If the test passed, click "Save". You should see Radarr in your Apps list:
[![prowlarr-9](/pics/prowlarr-9.png)](/pics/prowlarr-9.png)
#### Sonarr
#### Sonarr Connection
First, you are going to need your Sonarr API Key.
You can get your Sonarr API Key in Sonarr. Go to [http://{your-ip-address}:8989/settings/general]() to open Sonarr's settings, and you'll find the API Key under the "Security" section.
Time for Sonarr! First, grab your Sonarr API Key from [http://{your-ip-address}:8989/settings/general]() - it's under "Security" just like in Radarr.
[![bazarr-14](/pics/bazarr-14.png)](/pics/bazarr-14.png)
For now, just copy it and keep it in a safe location.
Copy that API key for safekeeping!
In "Settings", go to "Apps" and click on the button.
Back in Prowlarr, go to "Settings", "Apps" and click that button again.
[![prowlarr-10](/pics/prowlarr-10.png)](/pics/prowlarr-10.png)
On the "Add Application" modal, click on "Sonarr"
This time click on "Sonarr":
[![prowlarr-11](/pics/prowlarr-11.png)](/pics/prowlarr-11.png)
- In "Prowlarr Server", add `http://prowlarr:9696`
- In "Sonarr Server", add `http://sonarr:8989`
- In "ApiKey", add your Sonarr API key.
Fill in these details:
- Prowlarr Server: `http://prowlarr:9696`
- Sonarr Server: `http://sonarr:8989`
- API Key: paste your Sonarr API key here
[![prowlarr-12](/pics/prowlarr-12.png)](/pics/prowlarr-12.png)
At the bottom, you can click on "Test" and if everything is OK you should see a
One more test! Click "Test" - green checkmark time!
[![sonarr-10](/pics/sonarr-10.png)](/pics/sonarr-10.png)
[![sonarr-11](/pics/sonarr-11.png)](/pics/sonarr-11.png)
To finish, click on "Save". You should see Radarr added to the "Apps" list!
All good? Hit "Save". You should now see both Radarr and Sonarr in your Apps list:
[![prowlarr-13](/pics/prowlarr-13.png)](/pics/prowlarr-13.png)
Finally, click on "Sync App Indexers"
Finally, click on "Sync App Indexers" - this is where the magic happens! 🎩
[![prowlarr-14](/pics/prowlarr-14.png)](/pics/prowlarr-14.png)
Now, if you go back to Sonarr and Radarr, and check their "Indexer" settings, you'll see your indexers added magically!
Want to see something cool? Go check Sonarr and Radarr's "Indexer" settings - your indexers have been automatically added! No copy-pasting needed!
[![prowlarr-15](/pics/prowlarr-15.png)](/pics/prowlarr-15.png)
[![prowlarr-16](/pics/prowlarr-16.png)](/pics/prowlarr-16.png)
## Move forward
## Moving forward! 🚀
Now you can move with the configuration. [Bazarr](/config/bazarr) is next!
Now we can move on to [Bazarr](/config/bazarr) - it's going to handle all your subtitle needs!
## Do you want a more in depth configuration?
## Want to become a Prowlarr pro?
If you want a more in depth configuration, I recommend you check the [TRaSH Guide for Prowlarr](https://trash-guides.info/Prowlarr/).
If you want to really dive into what Prowlarr can do, check out the [TRaSH Guide for Prowlarr](https://trash-guides.info/Prowlarr/). They've got some amazing tips for power users! 🔧

View File

@ -2,7 +2,7 @@
title: "qBittorrent"
date: 2023-01-10T18:02:13-03:00
draft: false
weight: 2
weight: 1
summary: The qBittorrent project aims to provide an open-source software alternative to µTorrent.
---
@ -12,58 +12,18 @@ From their [website](https://www.qbittorrent.org/):
> The qBittorrent project aims to provide an open-source software alternative to µTorrent.
So, just like µTorrent, qBitorrent is a torrent downloader. Pretty easy!
So, just like µTorrent, qBitorrent is a torrent downloader. Pretty easy! 😎
## Initial configuration
In your browser, go to [http://{your-ip-address}:8080/]() and you'll see qBittorrent's admin page. The default username and password are:
```sh
username: admin
password: adminadmin
```
I know, super safe.
[![qbittorrent-1](/pics/qbittorrent-1.png)](/pics/qbittorrent-1.png)
After logging in, you'll see the empty qBittorrent window. Here, you have to click on the gear icon to enter the settings.
[![qbittorrent-2](/pics/qbittorrent-2.png)](/pics/qbittorrent-2.png)
You'll notice qBitorrent has A TON of settings you can change. First, go to the "BitTorrent" tab, check the "When ratio reaches" checkbox, and set it to 0
### Is this a dick move?
Yes.
In case you don't know, the BitTorrent protocol works by sharing (seeding) files across the network. By setting the seeding limit to zero, we are basically saying "Share the torrent **until** I've finished downloading." You'll still share the file across the network while downloading, but when the file completes, the torrent will automatically stop and wait for [Sonarr](/config/sonarr)/[Radarr](/config/radarr) to pick up the file.
For the purposes of this tutorial, we'll leave it at 0, but if you want you can change it later to a less dickish setting.
[![qbittorrent-3](/pics/qbittorrent-3.png)](/pics/qbittorrent-3.png)
Then, we'll continue to the "Web UI" tab. There, we can set it so it won't ask for a password if we are accessing it from the same subnet. This is not required but recommended.
[![qbittorreft-4](/pics/qbittorrent-4.png)](/pics/qbittorrent-4.png)
Now, on the "Advanced" tab, we need to set our Network interface to `tun0`, so it always uses the VPN connection and kills the connection if the VPN goes down for some reason.
[![qbittorreft-5](/pics/qbittorrent-5.png)](/pics/qbittorrent-5.png)
Finally, go to the bottom of the modal and click "Save".
[![qbittorreft-6](/pics/qbittorrent-6.png)](/pics/qbittorrent-6.png)
## Check your VPN!
If you configured your VPN correctly, it should be running. To test, run on your terminal:
First things first - if you set up a VPN during YAMS installation (which you really should!), qBittorrent should already be configured to use it. Let's verify everything is working correctly.
In your terminal, run:
```bash
$ yams check-vpn
yams check-vpn
```
If everything is working correctly, you should get a message like this:
You should see output like this:
```bash
Getting your qBittorrent IP...
<qBittorrent IP>
@ -75,10 +35,8 @@ Your local IP country is North Korea
Your IPs are different. qBittorrent is working as expected! ✅
```
If your VPN is working fine, move onward to [That's done!](#thats-done).
If the check fails (or you haven't configured the VPN), you'll see a message like this:
If the check fails, you'll see something like:
```bash
Getting your qBittorrent IP...
<your local IP>
@ -91,9 +49,93 @@ Your local IP country is North Korea
Your IPs are the same! qBittorrent is NOT working! ⚠️
```
**You should always run a VPN when downloading torrents!** You can manually set your VPN [here](/advanced/vpn/#manual-configuration) or you can run the YAMS installer again and use the automatic installer. Come back here after you have fixed this!
If your VPN check failed, head over to [VPN Configuration](/advanced/vpn/#manual-configuration) to fix it. **You should always use a VPN when downloading torrents!**
### Setting up qBittorrent
## That's done!
Let's get qBittorrent configured! In your terminal, check the qBittorrent logs to get your initial login credentials:
Excellent! Now we can move forward with [Radarr](/config/radarr).
```sh
docker compose logs qbittorrent
```
You'll see the qBittorrent username and password in the logs:
```
qbittorrent | ******** Information ********
qbittorrent | To control qBittorrent, access the WebUI at: http://localhost:8081
qbittorrent | The WebUI administrator username is: admin
qbittorrent | The WebUI administrator password was not set. A temporary password is provided for this session: FBFsKbfbD
qbittorrent | You should set your own password in program preferences.
qbittorrent | Connection to localhost (::1) 8081 port [tcp/tproxy] succeeded!
```
In your browser, go to [http://{your-ip-address}:8081/]() and you'll see qBittorrent's admin page. Log in with:
```sh
username: admin
password: your-temporary-password-from-the-logs
```
[![qbittorrent-1](/pics/qbittorrent-1.png)](/pics/qbittorrent-1.png)
After logging in, you'll see the empty qBittorrent window. Click on the gear icon in the top right to enter the settings.
[![qbittorrent-2](/pics/qbittorrent-2.png)](/pics/qbittorrent-2.png)
### Configuring BitTorrent Settings
First, go to the "Downloads" tab and set the "Default Save Path" to `/data/downloads/torrents/`.
[![qbittorrent-8](/pics/qbittorrent-8.png)](/pics/qbittorrent-8.png)
Then, go to the "BitTorrent" tab and check the "When ratio reaches" checkbox. Set it to 0.
### Is this a dick move?
Yes. 😅
The BitTorrent protocol works by sharing (seeding) files across the network. Setting the seeding limit to zero means "Share the torrent **until** I've finished downloading." You'll still share while downloading, but once complete, the torrent stops and waits for [Sonarr](/config/sonarr)/[Radarr](/config/radarr) to pick it up.
For this tutorial we'll leave it at 0, but feel free to be less selfish later!
[![qbittorrent-3](/pics/qbittorrent-3.png)](/pics/qbittorrent-3.png)
### Configuring Web UI Settings
Next, go to the "Web UI" tab. Here you can set it to skip password authentication when accessing from your local network. This is optional but recommended.
[![qbittorreft-4](/pics/qbittorrent-4.png)](/pics/qbittorrent-4.png)
While you're here, change that temporary password to something more secure:
[![qbittorreft-7](/pics/qbittorrent-7.png)](/pics/qbittorrent-7.png)
### Configuring Network Settings
On the "Advanced" tab, make sure your Network interface is set to `tun0`. This ensures qBittorrent always uses the VPN connection and stops if the VPN goes down.
[![qbittorreft-5](/pics/qbittorrent-5.png)](/pics/qbittorrent-5.png)
Finally, scroll to the bottom and click "Save".
[![qbittorreft-6](/pics/qbittorrent-6.png)](/pics/qbittorrent-6.png)
### Port Forwarding 🚀
Want faster downloads? YAMS supports automatic port forwarding! Check out our [Port Forwarding Guide](/advanced/port-forwarding/) to supercharge your download speeds.
[![qbittorrent-ports](/pics/advanced-port-forwarding-1.png)](/pics/advanced-port-forwarding-1.png)
## Final VPN Check
Let's do one last VPN check to make sure everything's working:
```bash
$ yams check-vpn
```
You should see your qBittorrent IP is different from your local IP. If not, head over to [VPN Configuration](/advanced/vpn/#manual-configuration) to fix it.
## That's done! 🎉
Looking good! Now we can move forward with [SABnzbd](/config/sabnzbd).

View File

@ -12,20 +12,29 @@ From their [wiki](https://wiki.servarr.com/radarr):
> Radarr is a movie collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new movies and will interface with clients and indexers to grab, sort, and rename them. It can also be configured to automatically upgrade the quality of existing files in the library when a better quality format becomes available.
In YAMS, Radarr is going to manage all our movies, download them, sort them, etc.
In YAMS, Radarr is going to manage all our movies: download them, sort them, and keep everything organized. It's like having your own personal movie butler! 🎬
## Initial configuration
In your browser, go to [http://{your-ip-address}:7878/]() and you'll see Radarr's empty page. You'll also notice you have 3 messages on the system tab, but we'll deal with them later.
In your browser, go to [http://{your-ip-address}:7878/](). First up, we need to set up some basic security.
- Select "Forms (Login Page)" as the "Authentication Method"
- In "Authentication Required" select "Disabled for Local Addresses" (this way you won't need to login when you're at home)
Fill in your username and password, then click on save:
[![radarr-18](/pics/radarr-18.png)](/pics/radarr-18.png)
You'll see Radarr's empty page. Don't worry about those 3 messages in the system tab - we'll deal with them soon!
[![radarr-1](/pics/radarr-1.png)](/pics/radarr-1.png)
### Media management
First, go to "Settings" and then "Media management". On this screen:
- Click on "Show Advanced".
- Check the "Rename Movies" box.
- Change "Standard Movie Format" to `{Movie Title} ({Release Year})`.
First things first - let's tell Radarr how to handle our movies. Go to "Settings" and then "Media management". On this screen:
- Click on "Show Advanced" (don't worry, we'll keep it simple!)
- Check the "Rename Movies" box
- Change "Standard Movie Format" to `{Movie Title} ({Release Year})`
[![radarr-2](/pics/radarr-2.png)](/pics/radarr-2.png)
@ -33,11 +42,11 @@ At the bottom of the same screen, go to "Root folders" and click on "Add Root Fo
[![radarr-3](/pics/radarr-3.png)](/pics/radarr-3.png)
And add the `/movies/` folder
Now add the `/data/movies/` folder:
[![radarr-4](/pics/radarr-4.png)](/pics/radarr-4.png)
**Note:** This is NOT on your filesystem! The `/movies/` folder exists inside the `docker` environment and maps to your server `/mediafolder/movies/` folder!
**Note:** This isn't actually on your filesystem! The `/data/movies/` folder exists inside the docker environment and maps to your server's `/mediafolder/media/movies/` folder. Magic! ✨
Finally, click on "Save Changes".
@ -45,7 +54,9 @@ Finally, click on "Save Changes".
### Download Clients
Here, you'll add the download clients for Radarr. That's where you'll tie in Radarr with [qBittorrent](/config/qbittorrent).
Time to connect Radarr to our download tools! This is where we'll link up with [qBittorrent](/config/qbittorrent) and [SABnzbd](/config/sabnzbd).
#### qBittorrent Setup
In "Settings", go to "Download Clients" and click on the button.
@ -55,25 +66,55 @@ On the "Add Download Client" screen, scroll down and click on "qBittorrent".
[![radarr-14](/pics/radarr-14.png)](/pics/radarr-14.png)
- In Name, add the name of your download client (qBittorrent).
- On Host, add your server IP address (in my case, `192.168.0.169`).
- On Username, add `admin`.
- On Password, add `adminadmin`.
Fill in these details:
- Name: qBittorrent (or whatever you want to call it!)
- Host: your server IP address (like `192.168.0.190`)
- Port: 8081
- Username: `admin`
- Password: your qBittorrent password
[![radarr-15](/pics/radarr-15.png)](/pics/radarr-15.png)
At the bottom, you can click on "Test" and if everything is OK you should see a ✅
Click that "Test" button at the bottom - if everything's good, you'll see a nice green checkmark! ✅
[![radarr-10](/pics/radarr-10.png)](/pics/radarr-10.png)
[![radarr-11](/pics/radarr-11.png)](/pics/radarr-11.png)
If everything is fine, click on "Save". You should see your download client added to the "Download Clients" page now!
If the test passed, click "Save". Your download client should now show up on the page:
[![radarr-16](/pics/radarr-16.png)](/pics/radarr-16.png)
## Moving forward!
#### SABnzbd Setup
Looking good! Now we can continue with [Sonarr](/config/sonarr).
Back in "Download Clients", click that button again.
## Do you want a more in depth configuration?
[![radarr-13](/pics/radarr-13.png)](/pics/radarr-13.png)
If you want a more in depth configuration, I recommend you check the [TRaSH Guide for Radarr](https://trash-guides.info/Radarr/).
This time, scroll down and pick "SABnzbd".
[![radarr-19](/pics/radarr-19.png)](/pics/radarr-19.png)
Fill in these details:
- Name: SABnzbd (or any name you like)
- Host: your server IP address (like `192.168.0.190`)
- Port: 8080
- API Key: your SABnzbd API key
Don't have your SABnzbd API key handy? No worries! You can find it here: [Getting your API key for Sonarr and Radarr](/config/sabnzbd/#getting-your-api-key-for-sonarr-and-radarr)
[![radarr-20](/pics/radarr-20.png)](/pics/radarr-20.png)
Time for another test! Click that "Test" button - hopefully you'll see another green checkmark! ✅
[![radarr-10](/pics/radarr-10.png)](/pics/radarr-10.png)
[![radarr-11](/pics/radarr-11.png)](/pics/radarr-11.png)
If the test worked, hit "Save". You should now see both download clients on the page:
[![radarr-21](/pics/radarr-21.png)](/pics/radarr-21.png)
## Moving forward! 🚀
Looking good! Now we can continue with [Sonarr](/config/sonarr). We're getting closer to having your own personal Netflix!
## Want to get really fancy?
If you want to dive deeper into Radarr's configuration, I highly recommend checking out the [TRaSH Guide for Radarr](https://trash-guides.info/Radarr/). They've got some really cool advanced settings in there! 🔧

View File

@ -10,10 +10,34 @@ summary: Final recommendations, how to continue?
Everything is working now! Yay! 🎉
To improve the experience, you can:
Here are some cool ways to make your YAMS experience even better:
- **Add more indexers.** (instructions for [Prowlarr](/config/prowlarr/#indexers)). The more indexers you have, the easier it will be to find more obscure movies and TV shows.
- **Add more subtitles providers.** (instructions for [Bazarr](/config/bazarr/#providers)). The more providers you have, the easier it will be for Bazarr to find the best subtitles for your files.
- **Install Emby/Jellyfin/Plex on your devices!** Emby/Jellyfin/Plex apps are available for Android TV, Amazon Fire TV, Chromecast, Roku, Xbox, Home Theater Computers, and more!
- **If you are using Emby, sign up for [Emby Premiere](https://emby.media/premiere.html) (optional, but VERY recommended!).** This way you will be able to have offline media, enable hardware transcoding, automatically convert your content, etc. I canceled all my streaming services, bought a 1 year license, and never looked back.
- **Configure and fine-tune all of the services.** You can always refer to this documentation if you mess up something. The key part of any good media server is that it should adapt to the user, and not the other way around.
### Add more indexers! 🔍
Check out the [Prowlarr indexers guide](/config/prowlarr/#indexers). The more indexers you have, the easier it'll be to find those hard-to-get movies and TV shows that your friends keep talking about!
### Expand your subtitle collection! 🗣️
Head to the [Bazarr providers guide](/config/bazarr/#providers) and add more subtitle sources. The more providers you have, the better chance Bazarr has of finding perfect subtitles for everything in your library.
### Get those apps! 📱
Install your media service apps (Emby/Jellyfin/Plex) on all your devices! They're available for:
- Android TV
- Amazon Fire TV
- Chromecast
- Roku
- Xbox
- Home Theater PCs
- And lots more!
### Consider going premium! ⭐
If you're using Emby, think about trying [Emby Premiere](https://emby.media/premiere.html). It's totally optional, but VERY recommended! You'll get:
- Offline media support
- Hardware transcoding (smoother playback!)
- Automatic content conversion
- And tons more cool features
I actually canceled all my streaming services, bought a 1-year license, and never looked back!
### Make it yours! 🛠️
Take time to configure and fine-tune all the services. Don't worry about breaking things - you can always refer back to this documentation if something goes wrong. The best media server is one that's customized to how YOU want to use it!
Remember: A good media server should adapt to you, not the other way around! 😎

View File

@ -3,93 +3,90 @@ title: "Running everything together"
date: 2023-01-12T18:06:44-03:00
draft: false
weight: 10
summary: So you finally got YAMS running? Let's add some movies and seeing everything working together!
summary: So you finally got YAMS running? Let's add some movies and see everything working together!
---
## First, I want to congratulate you 🎉
You did it! You installed and configured YAMS! Give yourself a good pat on your back 🙇🏻
You did it! You installed and configured YAMS! Give yourself a good pat on the back - you've earned it! 🙇‍♂️
[![party](/pics/party.gif)](/pics/party.gif)
Now comes the fun part: Adding your shows/movies and seeing everything working together 😎
Now comes the fun part: Adding your shows/movies and watching everything work together like a well-oiled machine! 😎
## Radarr & Sonarr
These instructions will apply to both Radarr and Sonarr. To keep the tutorial brief, I will only test Radarr.
These instructions work for both Radarr and Sonarr. To keep things simple, I'll show you with Radarr, but the process is super similar for TV shows!
Open Radarr at [http://{your-ip-address}:7878/]() and on the left menu click on "Add New". In this tutorial I'll use "The Godfather", but you can search for the movie you want!
Open Radarr at [http://{your-ip-address}:7878/]() and click on "Add New" in the left menu. For this demo, I'll use "The Godfather" (because it's a classic!), but you can search for any movie you want.
My recommendation is that you go for a famous movie first, just to confirm everything is working as expected.
Pro tip: For your first test, pick something popular - it'll be easier to find!
[![running-everything-together-1](/pics/running-everything-together-1.png)](/pics/running-everything-together-1.png)
Click on the movie you want to download.
Click on the movie you want to download:
[![running-everything-together-2](/pics/running-everything-together-2.png)](/pics/running-everything-together-2.png)
On the modal, select the quality you want the movie to be downloaded. If your movie is part of a collection, you can choose to download the entire collection in the "Monitor" box. For this case, I want to download the entire Godfather collection, so I'll choose that on the modal.
Now you can pick your quality preferences. If your movie is part of a collection (like The Godfather is), you can choose to download the whole series in the "Monitor" box. I'm going for the whole trilogy because, well, why not?
Finally, click on "Add Movie"
Finally, click "Add Movie"!
[![running-everything-together-3](/pics/running-everything-together-3.png)](/pics/running-everything-together-3.png)
Now, if you go back to "Movies", you'll see the movie(s) you added.
Head back to "Movies" and you'll see your selections:
[![running-everything-together-4](/pics/running-everything-together-4.png)](/pics/running-everything-together-4.png)
If you go to "Activity", you'll see their download status.
Click on "Activity" to watch the magic happen - you can see everything downloading in real-time! 🪄
[![running-everything-together-5](/pics/running-everything-together-5.png)](/pics/running-everything-together-5.png)
## qBittorrent
If you open qBittorrent in [http://{your-ip-address}:8080/](), you'll see your movie(s) downloading!
Want to see what's going on under the hood? Open qBittorrent at [http://{your-ip-address}:8081/]() and you'll see your movies downloading!
This means it is working as expected. When they finish downloading, Radarr is going to pick them up and put them in the right folder.
This means everything is working perfectly! When downloads finish, Radarr will automatically organize them into the right folders.
[![running-everything-together-6](/pics/running-everything-together-6.png)](/pics/running-everything-together-6.png)
## Media service
After your movies have downloaded, if you go to your Media service (Jellyfin, Emby or Plex), you'll see your movies right there, waiting for you.
After your downloads finish, head over to your media service and... ta-da! 🎉 Your movies are right there waiting for you!
Jellyfin:
[![running-everything-together-12](/pics/running-everything-together-12.png)](/pics/running-everything-together-12.png)
Emby:
[![running-everything-together-7](/pics/running-everything-together-7.png)](/pics/running-everything-together-7.png)
Plex:
[![running-everything-together-11](/pics/running-everything-together-11.png)](/pics/running-everything-together-11.png)
If you open the movie, you'll see it even has subtitles! This means [Bazarr](/config/bazarr) is working as well!
Open up a movie and look - subtitles are already there! That's [Bazarr](/config/bazarr) doing its thing! 🎯
[![running-everything-together-8](/pics/running-everything-together-8.png)](/pics/running-everything-together-8.png)
[![running-everything-together-9](/pics/running-everything-together-9.png)](/pics/running-everything-together-9.png)
You can play the movie right from your browser, with subtitles included:
You can even start watching right from your browser, with subtitles and everything:
[![running-everything-together-10](/pics/running-everything-together-10.png)](/pics/running-everything-together-10.png)
## Your filesystem
If you visit your `/mediafolder/movies` folder, you can check how Radarr is managing your library.
Curious about how everything's organized? Check out your `/mediafolder/movies` folder:
```sh
roger@debian:/srv/media/movies$ tree .
.
├── The Godfather (1972)
   ├── The Godfather (1972).en.srt
   ├── The Godfather (1972).es.srt
   └── The Godfather (1972).mp4
├── The Godfather (1972).en.srt
├── The Godfather (1972).es.srt
└── The Godfather (1972).mp4
├── The Godfather Part II (1974)
   ├── The Godfather Part II (1974).en.srt
   ├── The Godfather Part II (1974).es.srt
   └── The Godfather Part II (1974).mp4
├── The Godfather Part II (1974).en.srt
├── The Godfather Part II (1974).es.srt
└── The Godfather Part II (1974).mp4
└── The Godfather Part III (1990)
├── The Godfather Part III (1990).en.srt
├── The Godfather Part III (1990).es.srt
@ -98,12 +95,12 @@ roger@debian:/srv/media/movies$ tree .
3 directories, 9 files
```
If you don't like the way the folders/movies are named, you can always change it on [Radarr's media management page](/config/radarr#media-management). The same applies to [Sonarr](/config/sonarr#media-management).
Not a fan of how things are named? No problem! You can always change the naming format in [Radarr's media management page](/config/radarr#media-management) or [Sonarr's settings](/config/sonarr#media-management).
# Final step and conclusions
You should have your first media server up and running now! That's a big step forward in dropping your dependency on big services like Netflix or Amazon Prime.
You did it! 🎉 You've got your very own media server up and running! That's a huge step toward breaking free from subscription services like Netflix or Amazon Prime.
There are still A LOT of things you can do to make your experience even better! You can go to the [Recommendations](/config/recommendations) page now and finish the tutorial.
And guess what? There's still so much more you can do to make your setup even better! Head over to the [Recommendations](/config/recommendations) page for some cool ideas on what to try next.
🙌 Thank you for being here and for following the tutorial! Enjoy the fruit of your labor. You are awesome! 😎
🙌 Thanks for following along with the tutorial! Hope you enjoy your awesome new media server - you've earned it! 😎

64
content/config/sabnzbd.md Normal file
View File

@ -0,0 +1,64 @@
---
title: "SABnzbd"
date: 2023-01-10T18:02:13-03:00
weight: 2
draft: false
summary: SABnzbd is a program to download binary files from Usenet servers. Many people upload all sorts of interesting material to Usenet and you need a special program to get this material with the least effort.
---
## What is SABnzbd?
From their [website](https://sabnzbd.org/):
> SABnzbd is a program to download binary files from Usenet servers. Many people upload all sorts of interesting material to Usenet and you need a special program to get this material with the least effort.
So basically, SABnzbd is going to help us download stuff from Usenet servers. Pretty cool! 😎
## Initial configuration
In your browser, go to [http://{your-ip-address}:8080/]() and you'll see SABnzbd's setup page. First, choose your language and click on "Start Wizard":
[![sabnzbd-1](/pics/sabnzbd-1.png)](/pics/sabnzbd-1.png)
Next up, you'll need to choose a Usenet server. [Newshosting](https://www.newshosting.com/) usually has good deals going on, but you can use whatever server you prefer!
When you've got your server details ready, input them and click on "Next".
[![sabnzbd-2](/pics/sabnzbd-2.png)](/pics/sabnzbd-2.png)
You should now see the final wizard page - congrats! 🎉
You'll notice the Completed and Uncompleted download folders aren't quite where we want them. Don't worry, we'll fix that in a minute!
For now, just click on "Go to SABnzbd".
[![sabnzbd-3](/pics/sabnzbd-3.png)](/pics/sabnzbd-3.png)
Head over to the settings page by clicking on the cog-wheel icon in the top right.
[![sabnzbd-4](/pics/sabnzbd-4.png)](/pics/sabnzbd-4.png)
On the settings page, click on "Folders" and let's get those paths sorted:
- Set your "Temporary Download Folder" to `/data/downloads/usenet/incomplete`
- Set your "Completed Download Folder" to `/data/downloads/usenet/complete`
- Click on "Save Changes"
[![sabnzbd-5](/pics/sabnzbd-5.png)](/pics/sabnzbd-5.png)
## Getting your API key for Sonarr and Radarr
You'll need this API key later when we set up Radarr and Sonarr. Feel free to skip this section for now if you want - you can always come back!
To get your API key:
First, head back to the settings.
[![sabnzbd-4](/pics/sabnzbd-4.png)](/pics/sabnzbd-4.png)
Then, go to "General" and scroll down to "Security". You'll find your API Key right there!
[![sabnzbd-6](/pics/sabnzbd-6.png)](/pics/sabnzbd-6.png)
## That's done! 🎉
Excellent! Now we can move forward with [Radarr](/config/radarr). Get ready - this is where things start getting really fun! 😄

View File

@ -12,34 +12,45 @@ From their [wiki](https://wiki.servarr.com/sonarr):
> Sonarr is a PVR for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.
In YAMS, Sonarr is going to manage all our TV Shows, download them, sort them, etc.
In YAMS, Sonarr is your TV show manager - it's going to handle everything from downloads to organizing your episodes. Think of it as your personal TV assistant! 📺
## Initial configuration
In your browser, go to [http://{your-ip-address}:8989/]() and you'll see Sonarr's empty page. You'll also notice you have 3 messages on the system tab, but we'll deal with them later.
In your browser, go to [http://{your-ip-address}:8989/](). Just like with Radarr, we'll start with some basic security settings.
- Select "Forms (Login Page)" as the "Authentication Method"
- In "Authentication Required" select "Disabled for Local Addresses" (so you can browse freely on your home network)
Create your username and password, then click save:
[![sonarr-18](/pics/sonarr-18.png)](/pics/sonarr-18.png)
You'll see Sonarr's empty page. Don't mind those 3 system messages - we'll get to them later!
[![sonarr-1](/pics/sonarr-1.png)](/pics/sonarr-1.png)
### Media management
First, go to "Settings" and then "Media management". On this screen:
- Click on "Show Advanced".
- Check the "Rename Episodes" box.
- Change "Standard Episode Format" to `{Series Title} - S{season:00}E{episode:00} - {Episode Title}`
- Change "Daily Episode Format" to `{Series Title} - {Air-Date} - {Episode Title}`
- Change "Anime Episode Format" to `{Series Title} - S{season:00}E{episode:00} - {Episode Title}`
- Change "Series Folder Format" to `{Series TitleYear}`
Let's tell Sonarr how to handle our TV shows! Go to "Settings" and then "Media management". Here's what we need to do:
- Click on "Show Advanced" (it sounds scary but we'll keep it simple!)
- Check the "Rename Episodes" box
- Set up these naming formats:
- "Standard Episode Format": `{Series Title} - S{season:00}E{episode:00} - {Episode Title}`
- "Daily Episode Format": `{Series Title} - {Air-Date} - {Episode Title}`
- "Anime Episode Format": `{Series Title} - S{season:00}E{episode:00} - {Episode Title}`
- "Series Folder Format": `{Series TitleYear}`
[![sonarr-2](/pics/sonarr-2.png)](/pics/sonarr-2.png)
At the bottom of the same screen, go to "Root folders" and click on "Add Root Folder".
Scroll down to "Root Folders" and click on "Add Root Folder".
[![sonarr-3](/pics/sonarr-3.png)](/pics/sonarr-3.png)
And add the `/tv/` folder
Add the `/data/tvshows/` folder:
[![sonarr-4](/pics/sonarr-4.png)](/pics/sonarr-4.png)
**Note:** This is NOT on your filesystem! The `/tv/` folder exists inside the `docker` environment and maps to your server `/mediafolder/tv/` folder!
**Note:** Just like with Radarr, this path is inside the docker environment - it maps to your server's `/mediafolder/media/tvshows/` folder. Docker magic at work! ✨
Finally, click on "Save Changes".
@ -47,35 +58,67 @@ Finally, click on "Save Changes".
### Download Clients
Here, you'll add the download clients for Sonarr. That's where you'll tie in Sonarr with [qBittorrent](/config/qbittorrent).
Time to connect Sonarr to our download tools! We'll link up with [qBittorrent](/config/qbittorrent) and [SABnzbd](/config/sabnzbd).
#### qBittorrent Setup
In "Settings", go to "Download Clients" and click on the button.
[![sonarr-13](/pics/sonarr-13.png)](/pics/sonarr-13.png)
On the "Add Download Client" screen, click on "qBittorrent".
Find and click on "qBittorrent" in the list.
[![sonarr-14](/pics/sonarr-14.png)](/pics/sonarr-14.png)
- In Name, add the name of your download client (qBittorrent).
- On Host, add your server IP address (in my case, `192.168.0.169`).
- On Username, add `admin`.
- On Password, add `adminadmin`.
Fill in these details:
- Name: qBittorrent (or whatever clever name you come up with!)
- Host: your server IP address (like `192.168.0.190`)
- Port: 8081
- Username: `admin`
- Password: your qBittorrent password
[![sonarr-15](/pics/sonarr-15.png)](/pics/sonarr-15.png)
At the bottom, you can click on "Test" and if everything is OK you should see a
Hit that "Test" button - if everything's working, you'll see a happy green checkmark!
[![sonarr-10](/pics/sonarr-10.png)](/pics/sonarr-10.png)
[![sonarr-11](/pics/sonarr-11.png)](/pics/sonarr-11.png)
If everything is fine, click on "Save". You should see your download client added to the "Download Clients" page now!
All good? Click "Save". Your download client should now appear on the page:
[![sonarr-16](/pics/sonarr-16.png)](/pics/sonarr-16.png)
## Moving forward!
#### SABnzbd Setup
That's it! Now we can continue with [Prowlarr](/config/prowlarr).
Back in "Download Clients", click that button again.
## Do you want a more in depth configuration?
[![sonarr-13](/pics/sonarr-13.png)](/pics/sonarr-13.png)
If you want a more in depth configuration, I recommend you check the [TRaSH Guide for Sonarr](https://trash-guides.info/Sonarr/).
This time, let's find and click on "SABnzbd".
[![sonarr-19](/pics/sonarr-19.png)](/pics/sonarr-19.png)
Fill in these details:
- Name: SABnzbd (or something fun)
- Host: your server IP address (like `192.168.0.190`)
- Port: 8080
- API Key: your SABnzbd API key
Need to find your SABnzbd API key? No problem! Check here: [Getting your API key for Sonarr and Radarr](/config/sabnzbd/#getting-your-api-key-for-sonarr-and-radarr)
[![sonarr-20](/pics/sonarr-20.png)](/pics/sonarr-20.png)
Another test time! Click "Test" - hopefully another green checkmark! ✅
[![sonarr-10](/pics/sonarr-10.png)](/pics/sonarr-10.png)
[![sonarr-11](/pics/sonarr-11.png)](/pics/sonarr-11.png)
If the test passed, hit "Save". You should now see both download clients ready to go:
[![sonarr-21](/pics/sonarr-21.png)](/pics/sonarr-21.png)
## Moving forward! 🚀
That's it! Now we can move on to [Prowlarr](/config/prowlarr). We're getting close to having your own personal streaming service!
## Want to become a Sonarr power user?
If you want to really dive into what Sonarr can do, check out the [TRaSH Guide for Sonarr](https://trash-guides.info/Sonarr/). They've got some amazing advanced tips and tricks! 🔧

View File

@ -5,24 +5,57 @@ draft: false
weight: 100
---
## YAMS Official Chats
# Let's Connect! 🤝
- Matrix: [https://matrix.to/#/#yams-space:rogs.me](https://matrix.to/#/#yams-space:rogs.me).
- Discord: [https://discord.gg/Gwae3tNMST](https://discord.gg/Gwae3tNMST).
Got questions? Suggestions? Just want to say hi? We've got plenty of ways to reach out!
## Also, YAMS has a forum now!
## Community Hangouts 🏡
Go here: [https://forum.yams.media](https://forum.yams.media/).
- 💬 Matrix Space: [#yams-space:rogs.me](https://matrix.to/#/#yams-space:rogs.me)
- 🎮 Discord Server: [YAMS Discord](https://discord.gg/Gwae3tNMST)
- Official Forum 📋: [YAMS Forum](https://forum.yams.media)
## You can contact me by:
## Direct Contact 📧
### Email (preferred)
`[roger at rogs.me]` - Replace `at` with the "at" symbol (fuck you, email bots).
- Email: `[roger at rogs.me]`. Replace `at` with `@` (fuck you, email bots)
- GPG:
+ **Fingerprint:** `ADDF BCB7 8B86 8D93 FC4E 3224 C7EC E9C6 C36E C2E6`
+ **Import Command:**
```bash
curl -sL https://rogs.me/rogs.txt | gpg --import
```
- My Website 🌐: [rogs.me](https://rogs.me)
My GPG key for encrypting mail:
- gpg: `curl -sL https://rogs.me/rogs.txt | gpg --import`
- fingerprint: `ADDF BCB7 8B86 8D93 FC4E 3224 C7EC E9C6 C36E C2E6`
## Ground Rules 📏
### My website
Before reaching out, please:
- Check the [documentation](/) first
- Review [Common Issues](/faqs/common-errors/)
- Be specific about your problem
- Include relevant logs or screenshots
- Be patient and kind
[rogs.me](https://rogs.me)
## What to Expect 🤔
- Response times vary
- Community-driven support
- Friendly, no-nonsense assistance
- Open-source spirit of collaboration
**Pro Tip:** The more clearly you describe your issue, the faster we can help you! 🚀
## Reporting Bugs 🐛
Found an issue? Awesome! Head to our [GitLab Issues](https://gitlab.com/rogs/yams/-/issues) and:
- Search existing issues first
- Provide detailed reproduction steps
- Include system information
- Be awesome! 😎
## Social Media? Nope! 🙅‍♂️
We keep things simple. No Twitter, no Facebook, no Instagram. Just good old-fashioned community support!
---
Remember: YAMS is a community project. We're here to help, learn, and grow together! 💖

View File

@ -5,56 +5,47 @@ draft: false
weight: 100
---
## External donations (preferred)
If you **really** wish to donate, first I would like to say thank you from the bottom of my heart! ❤️
# Support the Awesome People Behind YAMS 💖
Second, I would prefer you donate to any of the projects used in this script. They are the ones doing the real work, I just created a `docker-compose` file, a couple of bash scripts, and a documentation.
Let's talk about something important: supporting the incredible projects and people that make YAMS possible! 🚀
- [linuxserver.io donations page](https://www.linuxserver.io/donate).
- [Sonarr donations page](https://sonarr.tv/donate).
- [Radarr donations page](https://radarr.video/donate).
- [Jellyfin donations page](https://opencollective.com/jellyfin).
- [Emby premier page](https://emby.media/premiere.html) (Recommended! I personally use this service).
- [Plex pass page](https://www.plex.tv/plex-pass/).
- [qBittorrent donations page](https://www.qbittorrent.org/donate).
- [Bazarr donations page](https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=XHHRWXT9YB7WE&source=url).
- [Prowlarr donations page](https://prowlarr.com/donate)
- [gluetun donations page](https://www.paypal.me/qmcgaw).
- [Lidarr donations page](https://lidarr.audio/donate).
- [Readarr donations page](https://readarr.com/donate).
## Give Love to the Real Heroes 🦸‍♀️🦸‍♂️
Just let them know YAMS sent you there 😎
YAMS is built on the shoulders of giants - amazing open-source projects that pour their heart and soul into creating free, powerful tools. Before you even think about donating to YAMS, we want you to support the projects that truly make this possible!
## Donations to YAMS
If you **really REALLY** want to donate to YAMS, you can donate here, but **only after you donate to one of the other projects!**
### Top Projects to Support 🌟
I'm not doing this for the money, and thank God I don't need donations to keep this project up and running. This is just a fun project I did for me and my friends 😀
Each of these projects is crucial to YAMS. If you appreciate what we've built, show some love to these incredible teams:
1. **LinuxServer.io**: [Donate Here](https://www.linuxserver.io/donate)
2. **Sonarr** 📺: [Donate Here](https://sonarr.tv/donate)
3. **Radarr** 🎬: [Donate Here](https://radarr.video/donate)
4. **Jellyfin** 🍿: [Donate Here](https://opencollective.com/jellyfin)
5. **qBittorrent** 🌊: [Donate Here](https://www.qbittorrent.org/donate)
6. **SABnzbd** 📰: [Donate Here](https://sabnzbd.org/donate/)
7. **Prowlarr** 🔍: [Donate Here](https://prowlarr.com/donate)
8. **Bazarr** 💬: [Donate Here](https://www.paypal.com/donate/?cmd=_s-xclick&hosted_button_id=XHHRWXT9YB7WE&source=url)
9. **Gluetun** 🛡️: [Donate Here](https://www.paypal.me/qmcgaw)
## YAMS Donations: The Very Last Priority 🏆
Okay, so you REALLY want to support YAMS? First, thank you! But honestly, I'm not doing this for money. YAMS is a passion project I created for myself and my friends. If you've already supported the projects above and still want to chip in, here are some options:
### Donation Methods 💸
- Paypal: https://paypal.me/rogsme21
- BTC: [`bc1qn092rw6q5nwha093qau6xryk6u3g9uwvy4tgdu`](/pics/btc.png)
- XMR: [`8B2QC3RPEqEhbUKKL96CGzZBqoDq8kjzd5uUVCTHvyG8fACh5up3Svz4iNKiGEoZTqUXt4cJHqC4EeaTmrbVVHXfRrrRcBq`](/pics/xmr.png)
# Special thanks
- [linuxserver.io](https://info.linuxserver.io/) for their amazing docker images.
- [Sonarr](https://sonarr.tv/).
- [Radarr](https://radarr.video/).
- [Jellyfin](https://jellyfin.org/).
- [Emby](https://emby.media/).
- [Plex](https://www.plex.tv/).
- [qBittorrent](https://www.qbittorrent.org/).
- [Bazarr](https://www.bazarr.media/).
- [Prowlarr](https://github.com/Prowlarr/Prowlarr)
- [gluetun](https://github.com/qdm12/gluetun).
- [Portainer](https://www.portainer.io/).
- [Lidarr](https://lidarr.audio/).
- [Readarr](https://readarr.com/).
- [The entire /r/selfhosted subreddit](https://www.reddit.com/r/selfhosted/).
- My friends:
+ [xploshioOn](https://github.com/xploshioOn).
+ [norlis](https://github.com/norlis).
+ [isaac152](https://github.com/isaac152).
## Special Thanks 🙌
## And finally:
You 🫵, for being such an amazing human being, checking out my project, and (hopefully!) using it on your media server.
YAMS wouldn't exist without:
- The amazing open-source community
- My incredible friends who tested and provided feedback
- The fantastic folks at LinuxServer.io
- The maintainers of all the *arr projects
- **YOU** 🫵 - for using, supporting, and believing in YAMS!
# Thank you! 🙇
Remember: The best way to support YAMS is by using it, sharing it, and helping others in our community! 🤝
Happy streaming! 🎬✨

View File

@ -5,24 +5,96 @@ draft: false
weight: 100
---
## I don't want to configure YAMS manually, is there a pre-made configuration?
# Frequently Asked Questions 🤔
Yes, but **I do not recommend using this option if this is the first time you configure YAMS.** You can check the instructions here: [Easy mode](/config/easy-mode).
## General Questions
## Why did you choose <this_software> instead of <that_software>?
### Why another media server script?
YAMS was born from a simple goal: Create a media server that's so easy to use, your non-tech-savvy family members could handle it! While there are other solutions out there, YAMS focuses on simplicity and automation without sacrificing power.
Because. That's why it's _**opinionated**_, you don't _necessarily_ have to agree with me. This setup is aimed at noobs and first time media server enthusiasts. You can always use my sources and fork the project 🔥
### Why these specific software choices?
YAMS is **opinionated** by design. Every choice was made to create a reliable, user-friendly experience. If you're curious about specific choices:
## I want to use YAMS in Windows. Can I do that?
- **Sonarr/Radarr**: Best-in-class for automated media management
- **Prowlarr**: Unified indexer management
- **qBittorrent**: Reliable, open-source torrent client
- **Gluetun**: Robust VPN management
- **Jellyfin/Emby/Plex**: Top-tier media streaming options
You might have success running YAMS manually in Windows with `docker`, but I recommend you check out [WIMPS](https://github.com/Xaque8787/WIMPS), a YAMS inspired setup for Windows. Although the project has been archived, it could provide a better starting point than YAMS.
Don't agree with our choices? That's totally fine! You can always use our source code as inspiration for your own setup. 🔧
## YAMS's configuration is too basic. I want more!
## Platform Support
And you shall receive! If you want a more deep configuration, I strongly recommend you checking out [TRaSH Guides](https://trash-guides.info/). The configurations there are extensive and very specific, I strongly recommend them!
### Can I run YAMS on Windows?
While technically possible with Docker for Windows, we don't officially support it. Check out [WIMPS](https://github.com/Xaque8787/WIMPS) instead - it's inspired by YAMS but built specifically for Windows! Although the project has been archived, it could provide a better starting point than YAMS.
## Can I add more containers to the VPN network?
### What about macOS?
Similar to Windows - it might work, but we focus on Linux support for the best experience. If you're on macOS, consider running YAMS in a Linux VM.
Yes, you can!
### Which Linux distributions are supported?
- **Recommended**: Debian 12
- **Also Supported**: Ubuntu 22.04
- Other distros might work but aren't officially supported
Go to [this link](https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md) and follow the instructions! For reference, your docker-compose file should be in `your/install/location/docker-compose.yaml`. If you used the default install location, it should be in `/opt/yams/docker-compose.yaml`.
## Advanced Usage
### How do I add custom containers?
Easy! Check out our [Adding Custom Containers](/advanced/add-your-own-containers/) guide. You can add any Docker container to work alongside YAMS.
### Can I modify YAMS's default settings?
Absolutely! While YAMS comes with sensible defaults, you can customize:
- Container configurations
- Download settings
- Media organization
- Network settings
- And much more!
### Need more advanced configurations?
Check out [TRaSH Guides](https://trash-guides.info/) - they're fantastic for deep-diving into each component's settings!
## Network & VPN
### Can I add more containers to the VPN?
Yes! Everything's documented in the [VPN guide](https://github.com/qdm12/gluetun-wiki/blob/main/setup/connect-a-container-to-gluetun.md). Your config file is in `/opt/yams/docker-compose.yaml` (or your custom install location).
### Which VPN providers work with YAMS?
We support many popular providers! Check our [VPN Configuration](/advanced/vpn/#official-supported-vpns) page for the full list.
## Troubleshooting
### Getting Docker permission errors?
Common issue! Check our [Common Errors](/faqs/common-errors/#common-docker-permission-errors) page for the fix.
### Services not starting?
1. Check the logs: `docker logs container-name`
2. Verify permissions
3. Check our [Common Issues](/faqs/common-errors/) page
## Getting Help 🆘
Need more help? We've got you covered!
1. **Documentation**
- Check relevant service docs
- Review our [Common Issues](/faqs/common-errors/) page
- Search existing forum posts
2. **Community**
- Join our [Discord](https://discord.gg/Gwae3tNMST)
- Visit our [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat
- Post on our [Forum](https://forum.yams.media)
3. **Issues & Bugs**
- Check our [GitLab Issues](https://gitlab.com/rogs/yams/-/issues)
- Search for similar problems
- Create a new issue if needed
## Contributing 🤝
Want to help make YAMS better? Awesome!
- Fork our repository
- Make your changes
- Submit a pull request
- Or help improve our documentation!
Remember: YAMS is a community project, and we welcome all contributions! 🌟

View File

@ -1,61 +1,235 @@
---
title: "Common issues"
title: "Common Issues"
date: 2023-10-22T10:22:29-03:00
draft: false
weight: 1
summary: How to fix common issues with YAMS.
summary: Solutions for common YAMS problems and how to fix them
---
# Docker
# Common YAMS Issues & Solutions 🔧
## Common `docker` permission errors
If you encounter errors like the one below when running the installer or the `yams` CLI:
```sh
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock:
```
It might indicate that you need to refresh your user permissions. This issue can typically be resolved by logging out of your server and then logging back in.
This problem arises because your user must be part of the `docker` group to execute `docker` commands without using `sudo`.
# qBittorrent
## qBittorrent has suddenly lost its internet connection
Sometimes, Gluetun disconnects with no apparent reason. It usually comes back after a minute or so, but qBittorrent may not recover as expected.
A helpful workaround is to create a cron job that monitors the status of qBittorrent and restarts it if necessary.
To open your crontab, use the following command: `crontab -e`
Now, paste the following line at the bottom:
## Docker Issues
### Permission Denied Errors 🚫
Getting this error when running YAMS commands?
```bash
* * * * * /usr/bin/docker exec qbittorrent curl -s https://am.i.mullvad.net/connected || /usr/bin/docker restart qbittorrent
permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
```
This script will check every minute whether qBittorrent has an internet connection. If it doesn't, the script will automatically restart it.
## qBittorrent is not accessible
If you [configured the VPN](/install/steps/#vpn), go to [Gluetun does not connect](#gluetun-does-not-connect)
# Gluetun
## Gluetun does not connect
After installing YAMS, there are instances when Gluetun fails to connect, resulting in qBittorrent becoming inaccessible.
To debug this issue, start by checking Gluetun's logs:
**Quick Fix:**
```bash
docker logs -n 100 gluetun
# Add yourself to the docker group
sudo usermod -aG docker $USER
# Log out and back in, or run:
newgrp docker
```
This command will display the last 100 lines of the Gluetun logs.
**Still having issues?**
1. Check group membership:
```bash
groups $USER
```
You should see 'docker' in the list.
Many of the issues arise due to misconfigurations in your VPN setup. Please review the documentation for your VPN by clicking [here](/advanced/vpn).
2. Verify socket permissions:
```bash
ls -l /var/run/docker.sock
```
Should show: `srw-rw---- 1 root docker`
Review the logs to try and find a solution. If you require assistance, feel free to join our [Matrix](https://matrix.to/#/#yams-space:rogs.me) or [Discord](https://discord.gg/Gwae3tNMST) chat and ask for help!
3. Check Docker service:
```bash
systemctl status docker
```
## VPN Issues
### Gluetun Won't Connect 🔌
If your VPN isn't working, let's troubleshoot step by step:
1. **Check Gluetun Logs**
```bash
docker logs -n 100 gluetun
```
2. **Common Error Messages:**
- "Authentication failed": Check your VPN credentials
- "Network unreachable": Check your internet connection
- "No such host": DNS issues - check your network settings
3. **Verify VPN Settings**
```bash
# In your .env file
VPN_ENABLED=y
VPN_SERVICE=your_provider
VPN_USER=your_username
VPN_PASSWORD=your_password
```
4. **Test VPN Connection**
```bash
yams check-vpn
```
5. **Provider-Specific Issues:**
- **ProtonVPN**: Make sure to use the correct username format (numbers only)
- **Mullvad**: Account number needs to be exactly 16 digits
- **NordVPN**: Use your token, not your regular password
### Quick VPN Fixes 🛠️
1. **Reset VPN Connection**
```bash
yams restart
```
2. **Force Container Recreation**
```bash
yams destroy
yams start
```
3. **Verify Network Settings**
```bash
docker network ls
```
## Download Client Issues
### qBittorrent Not Accessible 🔒
1. **Check if VPN is Enabled**
- Review [VPN Configuration](/advanced/vpn/)
- Run VPN check:
```bash
yams check-vpn
```
2. **Verify Port Mappings**
```bash
docker ps | grep qbittorrent
```
Should show port 8081 mapped
3. **Check Network Mode**
In `docker-compose.yaml`:
```yaml
qbittorrent:
network_mode: "service:gluetun"
```
4. **Review Logs**
```bash
docker logs qbittorrent
```
### SABnzbd Connection Issues 📡
1. **Check Service Status**
```bash
docker ps | grep sabnzbd
```
2. **Verify Config**
Look for:
```yaml
sabnzbd:
ports:
- 8080:8080
```
3. **Check Logs**
```bash
docker logs sabnzbd
```
## Media Server Issues
### Jellyfin/Emby/Plex Can't Find Media 📺
1. **Check Permissions**
```bash
ls -l /your/media/directory
```
Should be owned by PUID:PGID from your .env file
2. **Verify Mount Points**
```bash
docker inspect your-media-server
```
Look for "Mounts" section
3. **Path Issues**
- Inside container: `/data/movies`, `/data/tv`
- On host: Your `MEDIA_DIRECTORY` paths
4. **Scan Library**
- Trigger manual scan in web UI
- Check library paths in settings
## Performance Issues
### High CPU Usage 🔥
1. **Check Container Stats**
```bash
docker stats
```
2. **Monitor System Resources**
```bash
top
# or
htop
```
3. **Review Logs for Issues**
```bash
docker logs --tail 100 container-name
```
### Memory Problems 💾
1. **Check Available Memory**
```bash
free -h
```
2. **Monitor Container Memory**
```bash
docker stats --format "table {{.Name}}\t{{.MemUsage}}"
```
3. **Adjust Container Limits**
In docker-compose.yaml:
```yaml
services:
your-service:
mem_limit: 1g
```
## Getting More Help 🆘
Still stuck? We've got your back!
1. **Check Detailed Logs**
```bash
# All container logs
docker-compose logs
# Specific container
docker-compose logs container-name
```
2. **Community Resources**
- [YAMS Forum](https://forum.yams.media)
- [Discord Chat](https://discord.gg/Gwae3tNMST)
- [Matrix Room](https://matrix.to/#/#yams-space:rogs.me)
3. **Report Issues**
- Check existing [GitLab issues](https://gitlab.com/rogs/yams/-/issues)
- Provide logs and configuration when reporting new issues
Remember: Most issues have simple solutions! If you're stuck, our community is here to help! 💪

View File

@ -3,49 +3,65 @@ title: "What is YAMS?"
date: 2023-01-10T15:23:19-03:00
draft: false
weight: 1
summary: A brief summary on what YAMS is and its features
summary: Everything you need to know about YAMS and what makes it awesome
---
YAMS is a **highly opinionated** media server installation script.
# Welcome to YAMS! 🎬
It includes all the essential *arr apps, along with exceptionally detailed documentation. In just a few minutes, you can have a fully functional media server with Sonarr, Radarr, Jellyfin, qBittorrent, and more!
YAMS (Yet Another Media Server) is an **opinionated** media server that just works. No fuss, no complexity - just a smooth, automated media experience that you can set up in minutes!
With YAMS you'll be able to automate your media gathering, organization, and consumption.
## The Story Behind YAMS 📖
## First, why?
Back in 2019, I had a mission: Create a media server that my non-tech-savvy girlfriend could use without calling me for help every five minutes. So I dove in, combining some awesome open-source projects and wrapping them up in Docker containers.
In 2019 I wanted a setup that my non-technical girlfriend could use without any problems, so I started designing my media server using multiple open source projects and running them on top of docker.
Fast forward to today, and guess what? Mission accomplished! 🎉 Not only does my girlfriend use it without any issues, but I've even got my mom (who lives 5000km away!) streaming her favorite shows with zero problems.
Fast forward two years and I would like to say it works very well 😎 And most importantly, I accomplished my goal: My girlfriend uses it regularly and I've even added my mom, who lives 5000 kms from me.
When my friends saw how well it worked, they all wanted one too. But explaining how to set everything up was like trying to teach a cat to swim - technically possible, but way more complicated than it needed to be.
My friends wanted to have a media server like mine, but it was always hard to explain everything that was involved in building and connecting all the pieces together.
That's when it hit me: Why not create a script that could do all the heavy lifting? And that's how YAMS was born! Now anyone can build their own kickass media server without needing a PhD in computer science. 😎
So basically, my friends pushed me to build this script and documentation, so they (and now anyone!) could build it on their own home servers.
## What Makes YAMS Special? ✨
## Features
YAMS isn't just another media server - it's your personal Netflix-killer with superpowers! Here's what you get out of the box:
In no particular order:
### 🤖 Fully Automated
- **Smart Downloads:** Just tell it what shows and movies you want - YAMS handles the rest
- **Perfect Organization:** Everything gets sorted and labeled automatically
- **Subtitle Magic:** Auto-downloads subtitles in any language you want (if they're available)
- **Automatic shows/movies download:** Just add your shows and movies to the watch list and it should automatically download the files as soon as they are available.
- **Automatic classification and organization:** Your media files should be completely organized by default.
- **Automatic subtitles download:** Self-explanatory. Your media server should automatically download subtitles in the languages you choose if they are available.
- **Support for Web, Android, iOS, Android TV, and whatever that can support Emby/Jellyfin/Plex:** Since we are using Emby/Jellyfin/Plex, you should be able to watch your favorite media almost anywhere.
### 📱 Watch Anywhere
- Works on pretty much anything that can run Emby/Jellyfin/Plex:
- 🖥️ Web browsers
- 📱 iOS & Android phones/tablets
- 📺 Smart TVs
- 🎮 Gaming consoles
- And tons more!
## What's Under the Hood? 🛠️
## What's installed with YAMS?
YAMS combines some of the best open-source media tools out there:
- [qBittorrent](https://www.qbittorrent.org/).
- [Radarr](https://radarr.video/).
- [Sonarr](https://sonarr.tv/).
- [Prowlarr](https://github.com/Prowlarr/Prowlarr).
- [Bazarr](https://www.bazarr.media/).
- [Jellyfin](https://jellyfin.org/).
- [Emby](https://emby.media/).
- [Plex](https://www.plex.tv/).
- [gluetun](https://github.com/qdm12/gluetun).
- [Portainer](https://www.portainer.io/).
- [Lidarr](https://lidarr.audio/).
- [Readarr](https://readarr.com/).
### Core Components:
- 📥 qBittorrent & SABnzbd: Your download powerhouses
- 🎬 Radarr: Your personal movie hunter
- 📺 Sonarr: Your TV show tracker
- 🔍 Prowlarr: Your search master
- 💬 Bazarr: Your subtitle wizard
- 🎮 Jellyfin/Emby/Plex: Your streaming brain
With this combination, you can create a fully functional media server that is going to download, categorize, subtitle, and serve your favorite shows and movies.
### Performance Features:
- 🚄 **Port Forwarding**: Automatic port configuration for faster downloads
- 🔗 **Hardlinking**: Saves massive amounts of disk space by creating multiple references to the same file instead of duplicating data
- ⚡ **Atomic Moves**: Ensures clean, instantaneous file transfers without incomplete or corrupted files
Want to dive deep into file management best practices? Check out the [TRaSH Guides File and Folder Structure](https://trash-guides.info/File-and-Folder-Structure/) for the ultimate deep dive!
### Extra Goodies:
- 🔒 gluetun: Keeps your downloads private and secure
- 🎛️ Portainer: Makes managing everything a breeze
- 🎵 Lidarr: Handles your music collection
- 📚 Readarr: Takes care of your ebooks
All these pieces work together seamlessly to create a media server that's both powerful AND easy to use. It's like having your own streaming service, but better - because YOU'RE in control!
Ready to dive in? Let's [get started with the installation](/install/steps)!

View File

@ -7,261 +7,154 @@ summary: First steps to install YAMS on your server
## Dependencies
This script only depends on:
YAMS only needs a few things to get going:
- Debian 11/12 (recommended) or Ubuntu 22.04.
+ If you are using Ubuntu **make sure you are NOT installing the snap version of docker.** The snap version runs in a sandbox and doesn't have access to the OS.
If you run `which docker` and get this output:
- Debian 12 (recommended) or Ubuntu 22.04. If your OS isn't ready yet, check out these guides:
+ https://www.digitalocean.com/community/tutorials/initial-server-setup-with-debian-11
+ https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu
- Your OS needs to be properly configured. That means:
+ You have a user that is not `root` (because we're responsible adults 😎)
+ You can run `sudo apt update` and `sudo apt upgrade` without errors
+ If you're using Ubuntu, **make sure you are NOT using the snap version of docker!** The snap version runs in a sandbox and can't access what it needs. You can check by running `which docker`. If you see:
```
$ which docker
/snap/bin/docker
```
You **won't** be able to install YAMS. ⚠️
- [docker](https://www.docker.com/). If you don't have it installed, YAMS is going to install it for you.
- [docker-compose](https://docs.docker.com/compose/). If you don't have it installed, YAMS is going to install it for you.
You **won't** be able to install YAMS. ⚠️
If you havent installed `docker` and `docker-compose`, dont worry! The script will attempt to run both installations (it only works in Debian and Ubuntu!)
Don't worry if you don't have `docker` and `docker-compose` installed - the script can handle that for you on Debian and Ubuntu!
## Before running
Before installing, make sure you have:
- **An installation location:** The script is going to ask you for an install location, but it will default to `/opt/yams`. Just make sure your current user has permissions to write on the selected directory.
- **A media folder:** This is the folder where all your files are going to be downloaded and categorized. For example, if you choose `/srv/media`, the script is going to create the following folders:
+ `/srv/media/tv`: For your TV shows.
+ `/srv/media/movies`: For your movies.
+ `/srv/media/downloads`: For your torrent downloads.
+ `/srv/media/blackhole`: For your torrents blackhole.
- **A regular user to run and own the media files:** You shouldnt use `root` for this user, but Im not your father, nothing is going to stop you lol.
- **A VPN service (optional but STRONGLY recommended):** If you can, choose one from [this list](/advanced/vpn#official-supported-vpns). The VPN I always recommend is [Mullvad](https://mullvad.net/en/) for reasons I will explain later in the installation process.
Before we dive in, make sure you have:
## To install
- **An installation location:** The script defaults to `/opt/yams` but hey, you do you! Just make sure your user can write to wherever you choose.
- **A media folder:** This is where all your stuff will live. For example, if you pick `/srv/media`, the script will create:
+ `/srv/media/tv`: For your TV shows
+ `/srv/media/movies`: For your movies
+ `/srv/media/music`: For your tunes
+ `/srv/media/books`: For your books
+ `/srv/media/downloads`: For your downloads
+ `/srv/media/blackhole`: For your torrent blackhole
- **A regular user to run and own the media files:** Don't use `root` (I mean, I can't stop you, but come on! 😅)
- **A VPN service (optional but STRONGLY recommended):** Choose one from [this list](/advanced/vpn#official-supported-vpns). I always recommend [ProtonVPN](https://protonvpn.com/) because it's super easy to set up!
### Setup your install location (location is optional, you can choose any other location)
## Installation Steps
The location `/opt/yams` is **recommended**, but you can use whatever you like if your current user has permissions on the directory.
### 1. Setup your install location
The `/opt/yams` location is **recommended**, but you can be a rebel and use whatever you like if your user has permissions:
```bash
sudo mkdir -p /opt/yams
sudo chown -R $USER:$USER /opt/yams
```
### If you already have docker and docker-compose installed...
### 2. If you already have docker installed...
Make sure you can run `docker` **without** `sudo`!
Make sure you can run `docker` **without** `sudo`! Try this:
If you run `docker` with `sudo` and another user other than `root` you'll encounter multiple permission errors. You can find instructions on how to run `docker` without `sudo` here: https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user.
```bash
docker run hello-world
```
If you can run `docker run hello-world` without `sudo`, you can continue. If you encounter any other `docker` issue, go here: [Common docker permission errors](/faqs/common-errors/#common-docker-permission-errors).
If it fails, you might need to add your user to the docker group. Check out [Docker's post-installation steps](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user) or look at our [Common docker permission errors](/faqs/common-errors/#common-docker-permission-errors) page.
### Inspecting the `install` script by yourself (optional).
### 3. Get YAMS on your system
Its always a good practice to verify and study the scripts you run on your machine. You can always inspect [`install.sh`](https://gitlab.com/rogs/yams/-/blob/master/install.sh?ref_type=heads) script in the Gitlab repo here: https://gitlab.com/rogs/yams/-/blob/master/docs.org. You don't have to be a complete expert in `bash` (I'm definitely not lol), but if you have any experience with the Linux terminal you should be able to at least understand what's happening.
### Cloning from Gitlab
To install YAMS, please clone the installer to a location outside your chosen installation directory. I recommend using `/tmp/yams`.
Clone the installer to a temporary spot (let's keep things tidy!):
```bash
git clone --depth=1 https://gitlab.com/rogs/yams.git /tmp/yams
cd /tmp/yams
```
### Installing YAMS
### 4. Fire up the installer
```bash
bash install.sh
```
You'll see the following prompt:
```bash
====================================================
___ ___ ___
___ / /\ /__/\ / /\
/__/| / /::\ | |::\ / /:/_
| |:| / /:/\:\ | |:|:\ / /:/ /\
| |:| / /:/~/::\ __|__|:|\:\ / /:/ /::\
__|__|:| /__/:/ /:/\:\ /__/::::| \:\ /__/:/ /:/\:\
/__/::::\ \ \:\/:/__\/ \ \:\~~\__\/ \ \:\/:/~/:/
~\~~\:\ \ \::/ \ \:\ \ \::/ /:/
\ \:\ \ \:\ \ \:\ \__\/ /:/
\__\/ \ \:\ \ \:\ /__/:/
\__\/ \__\/ \__\/
====================================================
Welcome to YAMS (Yet Another Media Server)
Instalation process should be really quick
We just need you to answer some questions
====================================================
Now comes the fun part! The installer will walk you through everything:
#### Docker Setup (if needed)
```
Checking prerequisites...
⚠️ docker not found! ⚠️
Do you want YAMS to install docker and docker-compose? IT ONLY WORKS ON DEBIAN AND UBUNTU! [y/N]: y
⚠️ Docker/Docker Compose not found! ⚠️
Install Docker and Docker Compose? Only works on Debian/Ubuntu (y/N) [Default = n]:
```
You can choose `y` to install `docker` and `docker-compose` with YAMS or `n` to exit the script.
When docker finishes the installation OR if you already had `docker` and `docker-compose` installed, you should see the following message at the bottom:
Choose `y` if you want YAMS to handle the Docker installation.
#### Pick Your User
```bash
Checking prerequisites...
docker exists ✅
docker-compose exists ✅
Where do you want to install the docker-compose file? [/opt/yams]:
User to own the media server files? [current-user]:
```
This is where you pick who's going to own all the media files. It defaults to your current user (which is usually what you want 👍).
You should choose the path where you want YAMS to be installed. Like I said before, the `/opt/yams` directory **is recommended**, but you can use whatever you like if your current user has permissions on the directory. Type the path you'll like to use and press `[ENTER]` to continue.
#### Choose Your Directories
```bash
What's the user that is going to own the media server files? [your_current_user]:
Installation directory? [/opt/yams]:
Media directory? [/srv/media]:
Are you sure your media directory is "/srv/media"? (y/N) [Default = n]:
```
The script will create these if they don't exist - how thoughtful! 🎉
Now, you have to choose the user that is going to own your media files. **I strongly suggest you don't use `root` for this user**, but you can do whatever you want. The script is going to default to the current `$USER` running the script. Type the user you want to own the files and press `[ENTER]` to continue.
```bash
Please, input your media directory [/srv/media]:
```
My suggestion is to use something like `/srv/media`, but you _might_ want to use an external hard drive or a different partition on your machine. Just type the full path of the directory you want to use and press `[ENTER]` to continue. If it doesn't exist, the script is going to try to create it.
```bash
Are you sure your media directory is "/srv/media"? [y/N]:
```
Select `y` or `n` if you are happy with the folder you selected. Press `[ENTER]` to continue.
#### Media service
#### Pick Your Media Service
```bash
Time to choose your media service.
Your media service is responsible for serving your files to your network.
By default, YAMS supports 3 media services:
Supported media services:
- jellyfin (recommended, easier)
- emby
- plex (advanced, always online)
Choose your media service [jellyfin]:
```
It's time to configure the media service!
Jellyfin is great for beginners - it's what I recommend! But hey, they're all good choices.
By default, YAMS supports 3 big media services:
- [Jellyfin](https://jellyfin.org) (recommended): In my opinion, Jellyfin is the best one. It's fast, easy to configure and Open Source.
- [Emby](https://emby.media): Emby its the one I use on my local config. It's very similar to Jellyfin (Jellyfin is a fork of Emby), and it has almost the same funtionalities. The reason I'm not recommending it is because it has a paid plan and it's closed source.
- [Plex](https://plex.tv): I only recommend Plex to advanced users or people who need all the extra stuff it provides, because the interface and all the services might be a little overwhelming if this is your first time with a home server. I dont like it that much because its always online, and it has more functionalities than I need. Also, at least in YAMS, its the hardest to configure. But if you want to share your media server with other people easily, Plex is the way to go! Jellyfin and Emby can share media outside your network, but they are a little more complicated to configure.
Type one from the list and press [ENTER]. If you don't choose anything, the installer is going to default to Jellyfin.
#### VPN
#### VPN Setup
```bash
Time to set up the VPN.
You can check the supported VPN list here: https://yams.media/advanced/vpn.
Do you want to configure a VPN? [Y/n]:
Supported VPN providers: https://yams.media/advanced/vpn
Configure VPN? (Y/n) [Default = y]:
VPN service? (with spaces) [protonvpn]:
VPN username (without spaces):
VPN password:
```
This is where the magic happens to keep your downloads private and secure! 🔒
Now it's time to configure the VPN. The automatic installer supports all the VPNs on [this list](/advanced/vpn#official-supported-vpns), but **I strongly recommend using Mullvad**. Why?:
- They don't require your email or information to create a new account.
- It's simple to configure.
- They only have monthly subscriptions, so you can leave them whenever you want.
- You can pay with crypto.
### 5. Let it rip!
If want to configure a VPN, select `Y` and continue with these instructions. If you don't have a VPN or don't want to use a VPN, choose `N` and move to [finishing the installation](#finishing-the-installation). You can set your VPN later in the [qBittorrent configuration](/config/qbittorrent). **You should always use a VPN when downloading torrents!**
The script will now:
1. Copy all the files where they need to go
2. Start up all the YAMS services
3. Install a handy CLI tool
4. Set up all the permissions just right
When it's done, you'll get a nice success message and all your service URLs:
```bash
What's your VPN service? (with spaces) [mullvad]:
```
First, select your VPN provider. You can go to [this list](/advanced/vpn#official-supported-vpns) and verify the name of your VPN.
```bash
You should read mullvad's documentation in case it has different configurations for username and password.
The documentation for mullvad is here: https://github.com/qdm12/gluetun-wiki/blob/main/setup/providers/mullvad.md
What's your VPN username? (without spaces):
```
Now, just enter your VPN username. If it has spaces, delete them.
```bash
What's your VPN password? (if you are using mullvad, just enter your username again):
```
Then, enter your VPN password. The script is going to output `*` characters to hide your password, so don't worry about leaking your password on the screen.
### Finishing the installation
```bash
Copying docker-compose.example.yaml to /opt/yams/docker-compose.yaml...
docker-compose.example.yaml was copied successfuly! ✅
Copying .env.example to /opt/yams/.env...
.env.example was copied successfuly! ✅
Copying docker-compose.custom.yaml to /opt/yams/docker-compose.custom.yaml...
docker-compose.custom.yaml was copied successfuly! ✅
Everything installed correctly! 🎉
Running the server...
This is going to take a while...
...
...
...
```
If you get a `docker` permission error, go [here](/faqs/) to fix it.
After a lot of docker installing, you'll get a message like this at the end:
```bash
We need your sudo password to install the YAMS CLI and configure permissions...
```
In this step, YAMS needs your `sudo` password to configure the `yams` helper.
```bash
YAMS CLI installed successfully ✅
Media directory ownership and permissions set successfully ✅
Install directory ownership and permissions set successfully ✅
Configuration folder "/opt/yams/config" exists ✅
Configuration folder ownership and permissions set successfully ✅
```
And the installer ends like this:
```bash
========================================================
_____ ___ ___ ___
/ /::\ / /\ /__/\ / /\
/ /:/\:\ / /::\ \ \:\ / /:/_
/ /:/ \:\ / /:/\:\ \ \:\ / /:/ /\
/__/:/ \__\:| / /:/ \:\ _____\__\:\ / /:/ /:/_
\ \:\ / /:/ /__/:/ \__\:\ /__/::::::::\ /__/:/ /:/ /\
\ \:\ /:/ \ \:\ / /:/ \ \:\~~\~~\/ \ \:\/:/ /:/
\ \:\/:/ \ \:\ /:/ \ \:\ ~~~ \ \::/ /:/
\ \::/ \ \:\/:/ \ \:\ \ \:\/:/
\__\/ \ \::/ \ \:\ \ \::/
\__\/ \__\/ \__\/
========================================================
All done!✅ Enjoy YAMS!
You can check the installation on /opt/yams
========================================================
Everything should be running now! To check everything running, go to:
Service URLs:
qBittorrent: http://your.ip.address:8080/
qBittorrent: http://your.ip.address:8081/
SABnzbd: http://your.ip.address:8080/
Radarr: http://your.ip.address:7878/
Sonarr: http://your.ip.address:8989/
Lidarr: http://your.ip.address:8686/
Readarr: http://your.ip.address:8787/
Prowlarr: http://your.ip.address:9696/
Bazarr: http://your.ip.address:6767/
jellyfin: http://your.ip.address:8096/
Media Service: http://your.ip.address:8096/
Portainer: http://your.ip.address:9000/
You might need to wait for a couple of minutes while everything gets up and running
All the services location are also saved in ~/yams_services.txt
========================================================
To configure YAMS, check the documentation at
https://yams.media/config
========================================================
```
And that's it!
Don't worry - these URLs are saved in `~/yams_services.txt` so you don't have to memorize them! 😉
In your browser, you can visit each of the sites to check that they are running correctly. If one of them doesn't show up, you might need to wait a couple of minutes for docker to finish the full installation.
## What's Next?
Head over to the [configuration docs](/config) to get your media server set up just the way you like it!
Running into trouble? We've got your back!
- Check out the [Common Issues](/faqs/common-errors/) page
- Visit the [YAMS Forum](https://forum.yams.media)
- Join our [Discord](https://discord.gg/Gwae3tNMST) or [Matrix](https://matrix.to/#/#yams-space:rogs.me) chat - we're a friendly bunch! 🙋‍♂️

View File

@ -1,144 +0,0 @@
---
title: "Upgrading YAMS from version 1 to version 2 (Advanced)"
date: 2023-10-25T19:19:19-03:00
draft: false
weight: 4
summary: Are you running YAMS V1? Here's the guide to upgrade YAMS to V2!
---
# First, a brief disclaimer
I want to make this very clear: **This is entirely optional!** I will continue to support YAMS V1 as well as YAMS V2.
If you are completely happy with YAMS V1, or have a heavily modified setup, you can skip this tutorial!
## What are the advantages?
- YAMS V2 introduces a new command: `yams update`. It allows YAMS to update itself.
- Adding custom containers is now easier. You can find the tutorial here: [Add your own containers](/advanced/add-your-own-containers/).
# Before starting
# ⚠ BACKUP YOUR CONFIGURATION! ⚠
Some of these operations **MIGHT BE DESTRUCTIVE!** Ensure you have everything backed up before making any changes.
# Let's begin!
First, clone the YAMS repository in any directory (**do NOT** use your installation directory!). For the purposes of this tutorial, I'll use `~/yams_upgrade`.
```bash
git clone --depth 1 https://gitlab.com/rogs/yams.git ~/yams_upgrade
cd ~/yams_upgrade
```
## Setup .env.example
Begin by opening the `.env.example` file. Add your correct information to the file. All this information is currently available in your YAMS V1 `docker-compose.yaml` file.
For the purposes of this tutorial:
- My `PUID` and `PGID` are both set to `1000`.
- All the other settings are going to be the defaults set in the installer.
- Your media server name must be in lowercase. Accepted values are: `jellyfin`, `emby`, and `plex`.
- The VPN is set to be enabled (`y`) and configured to use Mullvad. If you are not using a VPN, leave the VPN configuration empty.
Here's how it should look:
```bash
# Base configuration
PUID=1000
PGID=1000
MEDIA_DIRECTORY=/srv/media
INSTALL_DIRECTORY=/opt/yams
MEDIA_SERVICE=jellyfin
# VPN configuration
VPN_ENABLED=y
VPN_SERVICE=mullvad
VPN_USER=12345678901234567890
VPN_PASSWORD=12345678901234567890
```
## Setup the YAMS binary
Now it's time to set up the `yams` binary. You need to replace some variables in this command, so proceed with caution:
- For the first line, the format is `/your/install/location/docker-compose.yaml`. In this tutorial, the value should be `/opt/yams/docker-compose.yaml`.
- For the second line, the format is `/your/install/location/docker-compose.custom.yaml`. In this tutorial, the value should be `/opt/yams/docker-compose.custom.yaml`.
- For the third line, the format is `/your/install/location`. In this tutorial, the value should be `/opt/yams`.
Run each of the `sed` commands separately!
```bash
sed -i -e "s|<filename>|/opt/yams/docker-compose.yaml|g" yams
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ REPLACE THE FIRST LINE HERE BETWEEN THE "|"
sed -i -e "s|<custom_file_filename>|/opt/yams/docker-compose.custom.yaml|g" yams
# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ REPLACE THE SECOND LINE HERE BETWEEN THE "|"
sed -i -e "s|<install_directory>|/opt/yams|g" yams
# ^^^^^^^^^ REPLACE THE THIRD LINE HERE BETWEEN THE "|"
```
## If you have custom containers:
Move your custom containers to `docker-compose.custom.yaml`. If you need help, you can use this tutorial from the "Adding a container" section: [Add your own containers - Adding a container](/advanced/add-your-own-containers/#adding-a-container).
# Finish the update
First, you need to stop YAMS. Run:
```bash
yams stop
```
## Copy the files to the correct locations
Now that you have all the changes ready for your setup, you can copy the files to the correct location.
### Copying .env.example file
You need to copy the `.env.example` file to the correct location. For the purposes of this tutorial, I will copy it to `/opt/yams/` and rename it to `.env`:
```bash
cp .env.example /opt/yams/.env
```
### Copying the docker-compose.custom.yaml file
Now, copy the file to the install location. For the purposes of this tutorial, I will copy it to `/opt/yams/`:
```bash
cp docker-compose.custom.yaml /opt/yams/
```
Let's also backup your current `docker-compose.yaml` configuration for safekeeping:
```bash
cp /your/install/location/docker-compose.yaml docker-compose.yaml.backup
```
### Copying the `yams` binary to the right place
This command will copy the current `yams` binary for backup and copy the new `yams` binary to the right place:
```bash
cp $(which yams) yams-old
sudo cp yams $(which yams)
```
### Run the update!
Now it's the time to execute the update!
```bash
yams update
```
Everything should be up and running!
# That's done!
YAMS should start back up again, and everything should be working as expected with the difference that now YAMS can be updated by using `yams update`.
If you have any issues upgrading from V1 to V2, you can create a new post in our forum: [YAMS Forum: Upgrading YAMS from V1 to V2](https://forum.yams.media/viewforum.php?f=26)

View File

@ -3,40 +3,89 @@ title: "Using the CLI"
date: 2023-01-10T17:55:41-03:00
draft: false
weight: 3
summary: YAMS comes with a very handy CLI to manage all your media server. Here's where you'll learn how to use it.
summary: Master YAMS's powerful command-line interface - your Swiss Army knife for managing your media server!
---
YAMS comes with a very handy CLI to manage your media server. Here's where you'll learn how to use it.
# The YAMS Command Line: Your Media Server's Best Friend 🛠️
On your server, you can type:
YAMS comes with a super handy command-line interface (CLI) that makes managing your media server a breeze! Think of it as your media server's remote control - but cooler. 😎
## Getting Started
To see what your YAMS CLI can do, just type:
```bash
yams --help
```
And you'll get the following message:
You'll get a nice overview of all available commands:
```bash
yams - Yet Another Media Server
Usage: yams [--help|restart|stop|start]
options:
--help displays this help message
restart restarts yams services
stop stops all yams services
start starts yams services
destroy destroy yams services so you can start from scratch
check-vpn checks if the VPN is working as expected
update updates YAMS
Usage: yams [command] [options]
Commands:
--help displays this help message
restart restarts yams services
stop stops all yams services
start starts yams services
destroy destroy yams services so you can start from scratch
check-vpn checks if the VPN is working as expected
backup backs up yams to the destination location
```
Everything is very self-explanatory, but I'll go in more detail here:
Let's break down each command and see what magic they can do! ✨
- `restart`: Restarts all the services. It stops them gracefully and starts them again.
- `stop`: Stops all the services gracefully.
- `start`: Starts all the services.
- `destroy`: Destroys all the services so you can start the configuration from scratch. ⚠️ Be careful! ⚠️ There's no going back after this!
- `check-vpn`: Checks the IP of the qBittorrent service and compares it to your own IP. If they are the same, it's going to warn you.
- `update`: Updates YAMS to the latest version available in the git repository.
## The Command Arsenal 🚀
### `yams start`
Fires up all your YAMS services. It's like pressing the "ON" button for your media server! The CLI will even show you a nice progress bar and let you know when everything's up and running.
If you get a `docker` permission error trying to use the CLI, go [here](/faqs/) to fix it.
### `yams stop`
Gracefully stops all YAMS services. Think of it as tucking your media server in for a good night's rest. 😴 All downloads will be paused, and all services will shut down properly.
### `yams restart`
Having a hiccup with one of your services? This command is like giving your media server a quick refresh! It:
1. Gracefully stops all services
2. Starts them back up
3. Shows you a progress bar while services are starting
4. Confirms when everything's back online
### `yams check-vpn`
Your privacy guardian! 🛡️ This command makes sure your VPN is doing its job by:
1. Checking your real IP address
2. Checking qBittorrent's IP address
3. Comparing them to make sure they're different
4. Showing you which countries both IPs are from
If something's wrong, it'll let you know right away!
### `yams backup [destination]`
Your safety net! 🎯 Backs up your entire YAMS configuration to keep your setup safe. Just tell it where to save the backup:
```bash
yams backup ~/my-backups
```
This will:
1. Stop all services (temporarily)
2. Create a timestamped backup file
3. Start everything back up
4. Tell you exactly where your backup is saved
### `yams destroy`
The nuclear option! ☢️ This command completely removes all YAMS services so you can start fresh. But don't worry - it'll ask for confirmation first! We don't want any accidents. 😅
## Pro Tips 💡
1. **Service Status**: After starting or restarting, YAMS will show you the status of each service, so you know everything's working properly.
2. **Backup Regularly**: Get into the habit of running `yams backup` before making any big changes. Future you will thank present you!
3. **Check That VPN**: Run `yams check-vpn` periodically to ensure your privacy is protected.
## Troubleshooting 🔧
Getting a `docker` permission error when trying to use the CLI? Don't panic! Head over to our [Common Issues](/faqs/common-errors/) page for the fix.
Remember: YAMS's CLI is here to make your life easier! If you're ever unsure about a command, just add `--help` at the end or check back here for a refresher. Happy streaming! 🎬

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 86 KiB

After

Width:  |  Height:  |  Size: 81 KiB

BIN
static/pics/radarr-18.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
static/pics/radarr-19.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

BIN
static/pics/radarr-20.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

BIN
static/pics/radarr-21.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 15 KiB

BIN
static/pics/sabnzbd-1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

BIN
static/pics/sabnzbd-2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

BIN
static/pics/sabnzbd-3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 83 KiB

BIN
static/pics/sabnzbd-4.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

BIN
static/pics/sabnzbd-5.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 97 KiB

BIN
static/pics/sabnzbd-6.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 85 KiB

After

Width:  |  Height:  |  Size: 81 KiB

BIN
static/pics/sonarr-18.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

BIN
static/pics/sonarr-19.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
static/pics/sonarr-20.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 70 KiB

BIN
static/pics/sonarr-21.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 15 KiB