- scripts/publish.ps1: build image and push to git.azuze.fr/kawa/imptune - docker-compose.yml: reference published image (build kept for local builds) - docker-compose.override.yml: gitignored live-reload dev config - add .gitignore (override + Python/data artifacts) - README: document dev vs published-image run and publishing Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
ImpTune
Build printer deploy packages (.intunewin for Intune, .zip for NinjaRMM) from Windows driver ZIPs via a web UI.
Run
Local development
docker compose up
docker-compose.override.yml is merged automatically: it mounts your working
copy into the container and runs uvicorn with --reload, so code edits are
picked up live. The override is gitignored (personal / per-machine).
Run the published image
To run the image from the registry instead of building locally, skip the override:
docker compose -f docker-compose.yml pull
docker compose -f docker-compose.yml up
Then open http://localhost:8000
Publishing
scripts/publish.ps1 builds the image and pushes it to the Gitea container
registry at git.azuze.fr/kawa/imptune.
# build + push :<short-git-sha> and :latest (prompts for a Gitea token)
./scripts/publish.ps1
# tag an explicit version
./scripts/publish.ps1 -Tag v1.2.0
Use a Gitea access token (Settings → Applications, with package read/write
scope) as the password. For non-interactive runs set GITEA_USER /
GITEA_TOKEN env vars. Run Get-Help ./scripts/publish.ps1 -Detailed for all
parameters (-Registry, -Owner, -Image, -NoBuild, -SkipLogin, …).
Environment variables
Set these under environment: in docker-compose.yml.
| Variable | Default | Purpose |
|---|---|---|
DATA_DIR |
/data |
Storage root for the SQLite DB, drivers and icons. Should map to the imptune_data volume. |
PORT |
8000 |
Port the server listens on inside the container. |