commit 0908e77378109e4d5ccd58ef7c854da3822571da Author: dlawler489 <104159223@student.swin.edu.au> Date: Wed Sep 9 12:01:55 2026 +1000 Initial deploy-only compose for the McDowall instance Reuses the power-compare image with its own port, env, and data volume. Co-Authored-By: Claude Sonnet 5 diff --git a/README.md b/README.md new file mode 100644 index 0000000..8956457 --- /dev/null +++ b/README.md @@ -0,0 +1,26 @@ +# power-compare-mcdowall + +Deploy-only repo for a second, fully independent instance of +[power-compare](https://git.plexultra.com/dlawler489/power-compare), pointed +at the McDowall plant instead of Kallangur. + +It has no source of its own -- it just pulls the same built image +(`git.plexultra.com/dlawler489/power-compare:main`) and runs it with its own +`.env`, its own database, and its own port (44597). A code change to +power-compare only needs pushing there; redeploying this stack picks up the +new image automatically. + +Setup for a fresh deploy: +1. Deploy this stack via the stack manager. +2. Create `/app/data/power-compare-mcdowall-persistent/.env` (as seen inside + the stack manager's own container) with the real config -- see + power-compare's `.env.example` for the shape. Use the same + `ISOLARCLOUD_APP_KEY` / `ISOLARCLOUD_APP_SECRET` / `ISOLARCLOUD_OAUTH_APP_ID` + as the Kallangur instance (same developer app registration, same + account) -- leave `ISOLARCLOUD_PLANT_ID` blank and pick McDowall from the + plant list in Settings after connecting, since one account can see both + plants. Set `POSTCODE` to McDowall's. +3. Redeploy so the container picks up the `.env`. +4. Open Settings, connect the OAuth flow (this instance has its own + database, so it needs its own one-time connect even though it's the same + account), and pick the McDowall plant from the list. diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..ae1e62c --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,19 @@ +services: + power-compare-mcdowall: + image: git.plexultra.com/dlawler489/power-compare:main + ports: + - "44597:8000" + env_file: + # See the power-compare repo's docker-compose.yml for why this is an + # /app/data/... path rather than a real host path: the stack manager + # runs `docker compose` inside its own container, so paths here + # resolve against ITS filesystem (mounted from + # /Users/davidlawler/docker/dockhand on the host), not the real host's. + - /app/data/power-compare-mcdowall-persistent/.env + environment: + - DB_PATH=/data/power_compare.db + volumes: + # Bind-mount SOURCE, by contrast, is resolved by the real Docker + # daemon against the actual host filesystem -- a real host path. + - /Users/davidlawler/docker/power-compare-mcdowall-data/data:/data + restart: unless-stopped