Files
zooqueenandHanzo Dev bcfbb991e2 Hosted compute calls EC2 only through egress, which signs as the account hanzo-compute; this process holds nothing that can sign an AWS request.
The IAM client_credentials to STS chain and its computeRoleArn and computeIam keys are gone. The EC2 client is built from explicit options with anonymous credentials over the egress carrier, and with no egressAddress hosted compute refuses by name. A customer's own AWS account is carried the same way. Region, subnet, security group and images stay in app.conf, the config files carry egressAddress and egressAudience, and the unread commerceToken is removed. spend moves to the egress aws commit.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-23 17:56:56 -07:00

48 lines
1.2 KiB
YAML

version: '3.1'
services:
visor:
restart: always
build:
context: ./
dockerfile: Dockerfile
target: STANDARD
entrypoint: /bin/sh -c './visor --createDatabase=true'
ports:
- "19000:19000"
depends_on:
- db
environment:
RUNNING_IN_DOCKER: "true"
DB_DSN: "${DB_DSN:-user=hanzo dbname=hanzo_visor host=db port=5432 sslmode=disable}"
IAM_CLIENT_ID: "${IAM_CLIENT_ID:-}"
IAM_CLIENT_SECRET: "${IAM_CLIENT_SECRET:-}"
COMMERCE_URL: "${COMMERCE_URL:-}"
EGRESS_ADDRESS: "${EGRESS_ADDRESS:-}"
EGRESS_AUDIENCE: "${EGRESS_AUDIENCE:-hanzo-egress}"
volumes:
- ./conf:/conf/
db:
restart: always
image: postgres:16-alpine
ports:
- "5432:5432"
environment:
POSTGRES_USER: "${POSTGRES_USER:-hanzo}"
POSTGRES_PASSWORD: "${POSTGRES_PASSWORD:?Set POSTGRES_PASSWORD in .env}"
POSTGRES_DB: hanzo_visor
volumes:
- pgdata:/var/lib/postgresql/data
guacd:
image: guacamole/guacd:latest
environment:
GUACD_LOG_LEVEL: debug
volumes:
- ./data/guacd:/usr/local/visor/data
ports:
- "4822:4822"
restart:
always
volumes:
pgdata: