Docker
Gouda images are published on GitHub container registry
https://github.com/RA341/gouda/pkgs/container/gouda
We have the following tags available
latest release v1.
To get hardlink support, you MUST follow a specific folder structure guide
Look at the example docker-compose here and adapt it your needs.
Setup
- Here is a minimal example for docker compose, but it is recommended to look at
the example docker-compose file, to get a
better
understanding.
gouda:
container_name: gouda
image: ras334/gouda:latest
ports:
- "9862:9862"
environment:
- GOUDA_USERNAME=admin
- GOUDA_PASS=admin
- GOUDA_UID=1000
- GOUDA_GID=1000
- GOUDA_DOWNLOAD_DIR=/media/downloads
- GOUDA_COMPLETE_DIR=/media/complete
- GOUDA_TORRENT_DIR=/media/downloads/torrents
volumes:
- /path/to/media:/media # make sure this matches your download client mount exactly
- /path/to/config:/config - Take look at all the env variables that can be added here.
- Start the compose stack
docker compose up -d
Storage Setup Guide
Hardlinking is a way to create multiple names for a file that all point to the same location on a disk. This allows users to access the file's contents through different paths, such as in different directories or under different names.
For a detailed guide on enabling hardlinking, refer to the excellent resource by Trash Guides.
TL;DR: Key Requirements
-
All media must reside on the same filesystem to enable hardlinking.
-
Create a single root directory for all your media files:
/media
├── /downloads # Where your download client will store files
├── /audiobooks # Final destination for audiobooks
└── /comics # Final destination for comics -
Docker Compose Example:
Then mount the entire folder in yourdocker-composeconfig:services:
gouda:
# Other service configuration
volumes:
- /home/user/config:/appdata/config # Config files (location is flexible)
- /home/user/media:/media # Media files (shared path)
download-client:
# Other service configuration
volumes:
- /home/user/media:/media # Must match Gouda's media path
Using Multiple Hard Drives:
If you have multiple hard drives, consider using mergerfs to combine them into a
single, unified storage pool.
This simplifies disk management and ensures compatibility with hardlinking.