| title | Docker Compose |
|---|
Compose definitions live in grid-core/install:
| File | Purpose |
|---|---|
docker-compose.yml |
Build core and ui from source |
docker-compose.release.yml |
Run pre-built images from GHCR |
Version pins and channels: Releases.
git clone https://github.com/gridplatform/grid-core.git
cd grid-core
cp install/.env.example install/.envSet GRID_AUTH_ADMIN_PASSWORD. Optional pins: GRID_CLI_REF, GRID_UI_REF.
docker compose -f install/docker-compose.yml --env-file install/.env up -d --build
bash install/verify.shgit clone https://github.com/gridplatform/grid-core.git
cd grid-core
cp install/.env.example install/.envSet GRID_AUTH_ADMIN_PASSWORD. Set GRID_RELEASE_CHANNEL (current or lts) or GRID_VERSION (exact tag).
docker compose -f install/docker-compose.release.yml --env-file install/.env pull
docker compose -f install/docker-compose.release.yml --env-file install/.env up -d
bash install/verify.sh- Always start detached (
-d). Foreground Compose stops when the session ends. - On a VM: enable Docker on boot, and optionally
grid-compose.service. Services userestart: unless-stopped. - core embeds grid-cli and Terraform. ui serves the console and proxies
/apito core. - HTTP port:
GRID_HTTP_PORT(default80). Openhttp://<host>/. - Before applying infrastructure, configure remote state (
GRID_TF_*). See Remote Terraform state.
| Variable | Purpose |
|---|---|
GRID_AUTH_ADMIN_PASSWORD |
Bootstrap admin password (required) |
GRID_AUTH_ADMIN_EMAIL |
Bootstrap admin email |
GRID_GITOPS_REPO_URL |
Desired-state repository |
GRID_MODULE_BANK |
Terraform module bank URL |
GRID_CLI_REF |
grid-cli git ref for source builds |
GRID_UI_REF |
grid-ui git ref for source builds |
GRID_UI_CONTEXT |
Override UI build context |
GRID_RELEASE_CHANNEL |
lts or current (release compose) |
GRID_VERSION |
Exact image tag (release compose) |
Full list: Configuration and install/.env.example.
| Volume | Mount |
|---|---|
grid-data |
Users, releases, audit, module-bank cache |
grid-workspaces |
Terraform workspaces |
grid-desired-state |
GitOps working tree |
Terraform runs inside the core container. Mount provider credentials via a Compose override, for example:
services:
core:
volumes:
- ${HOME}/.aws:/root/.aws:roInstance roles or workload identity on the host are also supported.
Source build:
cd grid-core
git fetch && git checkout <tag>
docker compose -f install/docker-compose.yml --env-file install/.env up -d --buildPre-built images — update GRID_VERSION or GRID_RELEASE_CHANNEL in install/.env, then:
docker compose -f install/docker-compose.release.yml --env-file install/.env pull
docker compose -f install/docker-compose.release.yml --env-file install/.env up -d