What's New
- Plex Watch History Import: Fetches watched movies and TV shows directly from your Plex server library sections.
- Netflix Watch History CSV Import: Upload a Netflix viewing-history CSV to import watched titles into Immaculaterr.
- Watched-status-aware collection ordering: Collection items you have already watched are pushed to the end so unwatched titles surface first.
- Global job queue, Rewind, and recovery: All jobs now run through one persisted FIFO queue shared across manual, scheduled, webhook, and polling triggers.
- Reports, audit trail, and bug fixes: Job detail pages now distinguish queued time from actual execution start time for clearer troubleshooting.
Full Changelog: https://github.com/ohmzi/Immaculaterr/compare/v1.7.5..v1.7.6
If you are running NAS or Unraid please check their specific documentation for update
NAS
Unraid
Updating
Docker
HTTPS update which includes sidecar
set -euo pipefail
IMM_IMAGE="ghcr.io/ohmzi/immaculaterr:latest"
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"
if ! command -v certutil >/dev/null 2>&1; then
sudo apt-get update
sudo apt-get install -y libnss3-tools
fi
docker pull "$IMM_IMAGE"
docker pull caddy:2.8.4-alpine
docker rm -f ImmaculaterrHttps 2>/dev/null || true
docker rm -f Immaculaterr 2>/dev/null || true
docker volume create immaculaterr-caddy-data >/dev/null 2>&1 || true
docker volume create immaculaterr-caddy-config >/dev/null 2>&1 || true
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
docker run -d \
--name Immaculaterr \
-p 5454:5454 \
-e HOST=0.0.0.0 \
-e PORT=5454 \
-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"
"$HOME/immaculaterr/install-local-ca.sh"
curl -I https://localhost:5464HTTP-only update
IMM_IMAGE="ghcr.io/ohmzi/immaculaterr:latest"
APP_PORT=5454
docker pull "$IMM_IMAGE"
docker rm -f ImmaculaterrHttps 2>/dev/null || true
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"Portainer
- In Portainer: Containers -> select Immaculaterr
- Click Recreate
- Enable Re-pull image
- Click Recreate