mirror of
https://github.com/Twigpine/node.git
synced 2026-11-08 17:55:53 -10:00
Deploys node3.gitlawb.com (Fly app gitlawb-node-3, nrt) from this repo's Dockerfile instead of its old private source. Canary for migrating the bootstrap nodes; node + node2 follow. - region nrt, reuses volume gitlawb_data (identity + repos) and the attached Postgres (DATABASE_URL secret) - corrects PUBLIC_URL to https://node3.gitlawb.com, bootstrap peers to node + node2 (not self), drops vestigial GITLAWB_DB (v0.3.9 is Postgres-only) - 1024MB (was 256MB — too small for v0.3.9) Migration note: the existing volume was created by the old root-based image, so /data was root-owned; the public image runs as uid 1000 and needed a one-time 'chown -R 1000:1000 /data'. node + node2 will need the same until the image entrypoint self-heals ownership. Co-Authored-By: OpenClaude <[email protected]>
infra/
Deployment configuration, organized by target — one subdirectory per platform.
infra/
├── fly/
│ └── fly.toml # Fly.io app config (gitlawb-node-test)
└── aws/ # Terraform: single EC2 + Docker (see aws/README.md)
Deploying to Fly.io
Run from the repo root so the Docker build context includes crates/,
Cargo.toml, and bootstrap-peers.json:
fly deploy -c infra/fly/fly.toml
The dockerfile path inside fly.toml is resolved relative to the config
file, so it points to ../../Dockerfile.
Deploying to AWS
See aws/README.md — Terraform for a single EC2 instance
running the published ghcr.io/gitlawb/node image with Docker compose.
What intentionally stays at the repo root
Dockerfile/Dockerfile.bins— shared by the release CI workflow (.github/workflows/release.yml),scripts/build-bins.sh, and Fly builds.docker-compose.yml— local dev stack; bundled into the macOS app byscripts/build-macos-app.shand used for repo detection by the app.
Future targets should follow the same per-platform layout.