From 83843bb6c8613b71750370ea38661d2ae48b6aa0 Mon Sep 17 00:00:00 2001 From: Synapse Date: Sat, 21 Feb 2026 01:08:28 +0000 Subject: [PATCH] docs: add Docker testing setup and instructions --- README-TESTING.md | 62 +++++++++++++++++++++++++++++++++++++++++ docker-compose.test.yml | 35 +++++++++++++++++++++++ 2 files changed, 97 insertions(+) create mode 100644 README-TESTING.md create mode 100644 docker-compose.test.yml diff --git a/README-TESTING.md b/README-TESTING.md new file mode 100644 index 00000000..6dca392e --- /dev/null +++ b/README-TESTING.md @@ -0,0 +1,62 @@ +# Testing Channels-Seerr with Docker + +## Quick Start + +1. **Build and run:** + ```bash + docker-compose -f docker-compose.test.yml up --build + ``` + +2. **Access the web UI:** + - Open browser: http://localhost:5055 + - Complete the setup wizard + - Add your Channels DVR server in Settings + +3. **Stop:** + ```bash + docker-compose -f docker-compose.test.yml down + ``` + +## Configuration + +- **Config directory:** `./config` (created automatically, persists settings) +- **Logs:** `docker-compose logs -f seerr` +- **Port:** Default 5055 (change in docker-compose.test.yml if needed) + +## Testing Channels DVR Integration + +1. Start Seerr container +2. Navigate to Settings → Channels DVR +3. Add your Channels DVR server: + - **Server URL:** http://your-channels-server:8089 + - **Test connection** to verify +4. Enable sync jobs (manual or scheduled) +5. Check logs for sync activity: + ```bash + docker-compose -f docker-compose.test.yml logs -f seerr | grep -i channels + ``` + +## Development Testing + +For faster iteration without full rebuilds: + +```bash +# Use Dockerfile.local for development +docker build -f Dockerfile.local -t channels-seerr:dev . +docker run -p 5055:5055 -v ./config:/app/config channels-seerr:dev +``` + +## Troubleshooting + +**Build fails:** +- Check Node.js version (requires 22.x) +- Try: `docker-compose -f docker-compose.test.yml build --no-cache` + +**Can't connect to Channels DVR:** +- If Channels is on host machine: Use `http://host.docker.internal:8089` +- If on tailnet: Use the Tailscale IP +- Check firewall allows connections from Docker network + +**Database issues:** +- SQLite (default): Stored in `./config/db/db.sqlite3` +- To use Postgres: Uncomment postgres service in docker-compose.test.yml diff --git a/docker-compose.test.yml b/docker-compose.test.yml new file mode 100644 index 00000000..a73f6b0a --- /dev/null +++ b/docker-compose.test.yml @@ -0,0 +1,35 @@ +version: '3.8' + +services: + seerr: + build: + context: . + dockerfile: Dockerfile + args: + COMMIT_TAG: channels-dvr-test + container_name: channels-seerr-test + hostname: seerr + ports: + - "5055:5055" + environment: + - LOG_LEVEL=debug + - TZ=America/Chicago + volumes: + - ./config:/app/config + restart: unless-stopped + + # Optional: PostgreSQL for production-like testing + # Uncomment if you want to test with Postgres instead of SQLite + # postgres: + # image: postgres:15-alpine + # container_name: seerr-postgres + # environment: + # - POSTGRES_PASSWORD=seerr + # - POSTGRES_USER=seerr + # - POSTGRES_DB=seerr + # volumes: + # - postgres-data:/var/lib/postgresql/data + # restart: unless-stopped + +# volumes: +# postgres-data: