Releases: jfroment/seedbox
v2.1 - The Pearl ⚪
Long time no see! 👋
What's new?
- Plex is now in host network mode. You can safely ignore warnings when Plex image is updated. With host mode, you'll be able to distinct local vs remote connections to Plex in Tautulli (and in Plex dashboard) if your server is at home.
- New services available: Calibre + Calibre-web added. They are disabled by default.
Fixes
- Fix typo in gluetun PGID variable
- Documentation wording edits (thanks again @tromcho)
- Fix #24: now you can add .torrent files in deluge again
- Fix #37: Portainer port + explanation for password generation in .env.sample file
- Fix #32: Now you can specify which
docker compose
binary to use. Useful when usingdocker-compose
binary, even for v2. Defaults to "docker-compose" for retro-compatibility purposes. Please check .env.sample. - Fix #20: New documentation in doc/apps/deluge-flood.md to explain how deluge must be configured for Flood to work.
- Remove Traefik pilot token, as the feature has been removed from Traefik itself.
v2.0 - The Swan
Seedbox version 2 is here! 🔥
Since there are some breaking changes and a configuration structure migration, a major version was mandatory.
What's new?
- Configuration change to new YAML format
- Run
config-updater.sh
to migrate your old services.conf to the new config.yaml format. ⚠️ jq
(v1.5+) andyq
(v4+) are now requirements- Easier feature switches
- If a service is missing, it won't be enabled by default like before. The config is now more declarative.
- Traefik routing rules are now dynamically generated in a file in Traefik config directory, so no more Docker labels. They became hard to maintain due to all possibilities caused by VPN support or custom files for example.
- New config syntax documented in the Configuration Guide.
- Run
- VPN support
- With
gluetun
service, you can now place any service behind a VPN. - Default gluetun configuration is Wireguard "custom" mode, but see below...
- More details in the VPN section of the Configuration Guide.
- With
- Support custom services and docker-compose yaml files
- Place a docker-compose yaml file in
services/custom/
directory, add a service in your config.yaml specifying acustomFile
, and you are set. - Support Plex hardware transcoding using a custom-file, already available in the
services
directory (just specify acustomFile
on plex service - see config.sample.yaml). - More details in the Configuration Guide.
- Place a docker-compose yaml file in
- Support arbitrary Traefik rules
- Place a Traefik YAML in
samples/custom-traefik/
directory, it will be copied in the Traefik configuration folder. - Ideal to forward traffic to other services which do not belong to this seedbox.
- More details in this section of the Configuration Guide
- Place a Traefik YAML in
- Disable certificates for some domains
- Using the flag
httpOnly: true
on a service, access any service in unsecure mode, delegating certificates management on a higher level (reverse proxy, firewall...). More details in the Configuration Guide.
- Using the flag
- Multiple hosts for any services
- The new config structure allows for more customization, for example you can now have many routes on the same service. Let's say, a local unsecured route + a secured one for remote access. Or anything you want.
- More customization
- Such as http authentication which is no more hardcoded but configurable for each service.
- Configurable paths on host for persistent data
- New services
Gluetun
: VPN client (see above)Heimdall
: DashboardReadarr
: Ebook and comic monitorKomga
: Comic Book ManagerKavita
: Comic / Book ManagerSyncthing
: P2P files synchronization
⚠️ Docker compose v2.2+ is now required
And also:
update-all.sh
is now calledrun-seedbox.sh
but its purpose is the same.- More checks in
run-seedbox.sh
. For example, throws an error if Flood is enabled but not Deluge, or if VPN is enabled on a service but the VPN client is not. - You can now specify where your data lives on your host through new environments variables (see .env.sample).
- This change is backward-compatible as the
run-seedbox.sh
script will default to the old "/data/torrents" and "/data/config" paths if these variables are not set.
- This change is backward-compatible as the
networks:
section is now aligned with the new docker compose syntax⚠️ Nextcloud-db has moved. It is now in/data/config
(or somewhere else if you set the new variables for host paths) (see below how to mitigate the errors). See the dedicated section below.- Disable Traefik access logs
- New flag
--debug
forrun-seedbox.sh
to see what is happening during configuration parsing. - Releases are named after LOST mythology. I exhausted all the characters of Person of Interest, so that's time for a change. Only geeks will get it, I know.
Some reading about configuration
📖 Do not forget to read the Configuration Guide.
How to migrate
./config-updater.sh
# Check the content of your .env file (in comparison with .env.sample which brings new variables)
# Also, check your generated config.yaml and read the config documentation (in doc/configuration.md)
./run-seedbox.sh
When everything runs smoothly, you can delete your old configuration file which is now useless:
rm -f services.conf
⚠️ Also, please make sure you have read the next section about Nextcloud Database location.
Nextcloud-db has moved
Since commit e4ede92, nextcloud-db directory (mapped on /var/lib/mysql) has moved from
/data/nextcloud-db
to $HOST_CONFIG_PATH/nextcloud-db
(/data/config/nextcloud-db by default).
To ensure a smooth transition, you will have to move the directory nextcloud-db into the correct new location, then run some commands to fix the schema:
mv /data/nextcloud-db/ /data/config/
./run-seedbox.sh
source .env
docker exec -it nextcloud-db mysql_upgrade -u root -p${MYSQL_ROOT_PASSWORD}
docker restart nextcloud nextcloud-db
Ensure everything runs nicely by looking at nextcloud-db and nextcloud logs, and by accessing your Nextcloud web UI.
Carl Elias
This is only a maintenance release. A current work is being done on a new project which consists of a port of this one on k8s/k3s.
Changes:
- Prowlarr is set to develop branch
Fixes and improvements:
- Fix docker-compose timeout variable
- JDownloader now always restarts (align behavior with all services)
- Tiny improvements on Nextcloud
- Fix startup command
- New script update-nextcloud.sh to update to latest sources and perform Nextcloud upgrades
Jocelyn Carter
New:
- Add Ombi (disabled by default)
- Add Overseer
- Add Prowlarr (alternative to Jackett with *arr softwares indexers auto-sync) (still in alpha)
- Add Flood UI for Deluge (connects directly to Deluge daemon). It is still experimental. Beware of new environment variables in .env.sample, used to set password for Deluge RPC connection and (optional) auto-creation of the Deluge "flood" daemon user.
Asudo chown -R ${PUID}:${PGUID} /data/config/flood
should be done if permissions are not correctly set when starting flood (see its logs). - services.conf file is now per-user, so in this repository there is only the sample file now. Existing services.conf files will be retained, so there should be no impact for users. A warning is now displayed if there is a new service in services.conf.sample to alert users about a configuration "drift" between their file and the "upstream" one.
Improvements:
- Add
--no-pull
flag toupdate-all.sh
script, which skips the pull step. Useful when configuring/debugging/recreating containers. - Netdata tag is now "stable", and Docker socket is mounted as read-only.
Samantha Groves
New:
- Sonarr and Lidarr are now on tag develop
- Tdarr is now v2 only, all configuration has moved and no procedure to migrate v1 config exist.
Improvements:
- Fix Nextcloud init script
- Fix typos
Lionel Fusco
New:
- Use ghcr.io as registry when possible to limit DockerHub rate limits
- Add FlareSolverr to bypass Cloudflare protection with some Jackett indexers
- Possibility to disable each service separately. See README.md
Improvements:
- Netdata: enable new metrics by mapping more host volumes
- Split docker-compose.yml into separate YAML files. Now easier to use, hack and maintain.
- Explicit tag on Tdarr, as v2 is out and migration is not done yet.
Warning:
- Docker-compose 1.28+ is now required.
- After upgrading, all containers will be recreated. No data will be lost. It is due to the new file structure.
Sameen Shaw
v1.1 maintenance release with the following changes:
- Added Tdarr service
- Nextcloud now uses Linuxserver.io image, and has its own database (MariaDB).
- Radarr updated to V3 (channel is now develop)
- Traefik rules and labels a bit simplified (entrypoint declaration is now global for example)
Harold Finch
After Traefik 2 update, here's the first milestone.
Initial changelog:
- Traefik v2 with configuration through environment only (config files work out-of-the-box)
- Automatic Let's Encrypt certificates creation and renewal. Launch it and forget it!
- Persistent storage (by using
local-persist
docker plugin)- For media/downloads
- For configuration files (easier to backup)
- Shared HTTP authentication for services which have no build-in login enabled by default
- Traefik console enabled and secured by default
- Global HTTP to HTTPS redirection
- Permissions mapping by the use of GID/UID environment variables in containers
- Easy to install: see README.md
- Easy to update
git pull
./update-all.sh
- All is hackable
Enjoy and do not hesistate to open an issue if you have any question.