NoteWise ships a two-stage Docker image tuned for CLI workloads. The builder stage installs dependencies with uv; the runtime stage copies only the virtual environment, runs as a dedicated notewise user, and keeps writable state under /home/notewise/.notewise.
Property Value Base image python:3.13-slimUser notewise (uid 1001)Entrypoint notewiseDefault volume /outputWorking directory /outputState directory /home/notewise/.notewise
Pull the image
docker pull ghcr.io/whoisjayd/notewise:latest
Release builds also publish versioned tags:
docker pull ghcr.io/whoisjayd/notewise:1.0.0
docker pull ghcr.io/whoisjayd/notewise:1.0
docker pull ghcr.io/whoisjayd/notewise:1
Usage examples
docker run --rm \
-e GEMINI_API_KEY= " your_key_here " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process " https://youtube.com/watch?v=VIDEO_ID " --no-ui
Generated files are written to /output inside the container. Mount a host directory there to access them.
docker run --rm \
-e OPENAI_API_KEY= " sk-... " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process " URL " --model gpt-4o --no-ui
docker run --rm \
-e GEMINI_API_KEY= " your_key " \
-v "$( pwd ) /urls.txt:/urls.txt:ro " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process /urls.txt --no-ui
docker run --rm \
-e GEMINI_API_KEY= " your_key " \
-e YOUTUBE_COOKIE_FILE= " /cookies/youtube.txt " \
-v "$( pwd ) /cookies:/cookies:ro " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process " URL " --no-ui
To preserve the SQLite cache across container runs, mount the state directory: docker run --rm \
-e GEMINI_API_KEY= " your_key " \
-v "$( pwd ) /notewise-state:/home/notewise/.notewise " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process " URL " --no-ui
The container user is notewise (uid 1001). The state directory is /home/notewise/.notewise.
Environment variables
All configuration keys can be passed as -e flags:
docker run --rm \
-e GEMINI_API_KEY= " your_key " \
-e DEFAULT_MODEL= " gemini/gemini-2.5-flash " \
-e MAX_CONCURRENT_VIDEOS= " 3 " \
-e TEMPERATURE= " 0.5 " \
-v "$( pwd ) /output:/output " \
ghcr.io/whoisjayd/notewise:latest \
process " URL " --no-ui
See Configuration Reference for all available keys.
Build locally
git clone https://github.com/whoisjayd/notewise
cd notewise
docker build -t notewise:local .
docker run --rm \
-e GEMINI_API_KEY= " your_key " \
-v "$( pwd ) /output:/output " \
notewise:local process " URL " --no-ui
Last modified on March 28, 2026