What's Changed
- Password recovery and reset
- Added forgot-password and password reset with security-question verification.
- Existing profiles are prompted to configure recovery after updating.
- Profile settings now include recovery management and password change controls.
- Multi-profile Immaculate Taste lanes
- Immaculate Taste now supports multiple profile lanes running in parallel.
- Each profile can use its own Radarr/Sonarr route, default folders, and naming behavior.
- User-scoped naming overrides and profile fallbacks keep collection naming consistent.
- Smarter profile filtering and matching
- Added include/exclude filters for genre and audio language per profile.
- Improved profile matching keeps recommendations aligned to each profile's goal.
- Helps reduce unwanted titles and improves recommendation precision.
- Custom collection poster workflow
- Added custom poster upload for collections created by Immaculaterr.
- Poster preview/upload is available from profile tools in Command Center.
- Poster files persist in app data across restarts and updates.
Full Changelog: https://github.com/ohmzi/Immaculaterr/compare/v1.6.1..v1.7.0
Updating
Docker
HTTP-only update (required)
IMM_IMAGE="ghcr.io/ohmzi/immaculaterr:latest"
APP_PORT=5454
docker pull "$IMM_IMAGE"
docker rm -f Immaculaterr 2>/dev/null || true
docker run -d \
--name Immaculaterr \
-p ${APP_PORT}:${APP_PORT} \
-e HOST=0.0.0.0 \
-e PORT=${APP_PORT} \
-e TRUST_PROXY=1 \
-e APP_DATA_DIR=/data \
-e DATABASE_URL=file:/data/tcp.sqlite \
-v immaculaterr-data:/data \
--restart unless-stopped \
"$IMM_IMAGE"Optional HTTPS sidecar (can run anytime later)
set -euo pipefail
mkdir -p "$HOME/immaculaterr"
curl -fsSL -o "$HOME/immaculaterr/caddy-entrypoint.sh" \
"https://raw.githubusercontent.com/ohmzi/Immaculaterr/master/docker/immaculaterr/caddy-entrypoint.sh"
curl -fsSL -o "$HOME/immaculaterr/install-local-ca.sh" \
"https://raw.githubusercontent.com/ohmzi/Immaculaterr/master/docker/immaculaterr/install-local-ca.sh"
chmod +x "$HOME/immaculaterr/caddy-entrypoint.sh" "$HOME/immaculaterr/install-local-ca.sh"
# Needed so install-local-ca.sh can import trust into Firefox profiles
if ! command -v certutil >/dev/null 2>&1; then
sudo apt-get update
sudo apt-get install -y libnss3-tools
fi
docker pull caddy:2.8.4-alpine
docker rm -f ImmaculaterrHttps 2>/dev/null || true
# Keep named volumes stable so certs persist across restarts
docker volume create immaculaterr-caddy-data >/dev/null
docker volume create immaculaterr-caddy-config >/dev/null
docker run -d \
--name ImmaculaterrHttps \
--network host \
-e IMM_ENABLE_HTTP=false \
-e IMM_ENABLE_HTTPS=true \
-e IMM_HTTPS_PORT=5464 \
-e IMM_INCLUDE_LOCALHOST=true \
-e IMM_ENABLE_LAN_IP=true \
-e APP_INTERNAL_PORT=5454 \
-v "$HOME/immaculaterr/caddy-entrypoint.sh:/etc/caddy/caddy-entrypoint.sh:ro" \
-v immaculaterr-caddy-data:/data \
-v immaculaterr-caddy-config:/config \
--restart unless-stopped \
caddy:2.8.4-alpine \
/bin/sh /etc/caddy/caddy-entrypoint.sh
# CRITICAL: trust the current Caddy local CA
"$HOME/immaculaterr/install-local-ca.sh"
# Quick verify
curl -I https://localhost:5464Portainer
- In Portainer: Containers → select Immaculaterr
- Click Recreate
- Enable Re-pull image
- Click Recreate