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.
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.First, let’s find your YAMS installation. I’ll use /opt/yams
in these examples, but replace it with your actual install location:
cd /opt/yams
YAMS provides some handy environment variables you can use in your custom containers:
PUID: Your user ID
PGID: Your group ID
MEDIA_DIRECTORY: Your media folder location
INSTALL_DIRECTORY: Your YAMS installation location
These make it super easy to keep your custom containers working in harmony with YAMS!
Let’s walk through an example by adding Overseerr - a fantastic request management app for your media server.
docker-compose.custom.yaml
:nano docker-compose.custom.yaml
services:
line. Your file should start like this:services: # Make sure this line is uncommented!
overseerr:
image: lscr.io/linuxserver/overseerr:latest
container_name: overseerr
environment:
- PUID=${PUID} # Using YAMS's user ID
- PGID=${PGID} # Using YAMS's group ID
volumes:
- ${INSTALL_DIRECTORY}/config/overseer:/config # Using YAMS's config location
ports:
- 5055:5055
restart: unless-stopped
yams restart
You should see something like:
⠙ overseerr Pulling 5.2s
[...]
That’s it! Your new container is up and running! 🎉
Looking for cool containers to add? Check out:
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.
Want your custom container to use YAMS’s VPN? Add this to your container config:
network_mode: "service:gluetun"
Check out Running Prowlarr behind the VPN for a detailed example!
You can access any environment variable from YAMS’s .env
file in your custom containers. Just use the ${VARIABLE_NAME}
syntax!
PUID
and PGID
!Here are some popular containers that work great with YAMS:
If you run into any issues:
Remember: YAMS is all about making your media server work for YOU. Don’t be afraid to experiment and make it your own! 😎