docs(devops): update all documentation for DockerSpec compliance
- Replace all docker-compose.yml/docker-compose.monitoring.yml references with compose.yaml/compose.monitoring.yaml (modern Compose Spec naming) - Replace all `docker-compose` CLI commands with `docker compose` (plugin syntax) - Update Dockerfile stage descriptions: node:18-alpine → node:20.11-bookworm-slim, built-in node user → explicit nodeapp:1001 non-root user - Update image version references: postgres:14-alpine → postgres:14.12-alpine3.19, redis:7-alpine → redis:7.2-alpine3.19 - Externalize postgres credentials: hardcoded values → POSTGRES_USER/PASSWORD/DB env vars - Externalize Grafana admin password: hardcoded 'agentidp' → GF_ADMIN_PASSWORD env var - Add Docker Compose Variables section to environment-variables.md (POSTGRES_*, GF_ADMIN_PASSWORD) - Update local-development.md Step 3: cp .env.example .env, document POSTGRES_* purpose - Update quick-start.md: cp .env.example .env, use awk/sed for JWT key injection - Update 07-dev-setup.md: remove 'no .env.example' claim, reference cp .env.example - Update docker-compose.yml key file description in 04-codebase-structure.md - Update monitoring overlay launch commands across all docs (compose.yaml + compose.monitoring.yaml) - Update volume names to kebab-case: postgres_data → postgres-data, redis_data → redis-data - Fix compliance encryption-runbook: docker-compose restart agentidp → docker compose restart app All docs now consistent with compose.yaml in repo root. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -6,7 +6,7 @@ This guide gets you from zero to a working agent identity inside an organization
|
||||
|
||||
You need two tools installed:
|
||||
|
||||
- **Docker** (includes `docker-compose`) — to run PostgreSQL and Redis
|
||||
- **Docker** (with Compose plugin, v2.20+) — to run PostgreSQL and Redis
|
||||
- **Node.js 18+** (includes `npm`) — to run the server
|
||||
- **curl** — to call the API
|
||||
|
||||
@@ -32,16 +32,19 @@ openssl genrsa -out private.pem 2048
|
||||
openssl rsa -in private.pem -pubout -out public.pem
|
||||
```
|
||||
|
||||
Create your `.env` file:
|
||||
Copy the environment template and fill in your JWT keys:
|
||||
|
||||
```bash
|
||||
cat > .env << 'EOF'
|
||||
DATABASE_URL=postgresql://sentryagent:sentryagent@localhost:5432/sentryagent_idp
|
||||
REDIS_URL=redis://localhost:6379
|
||||
PORT=3000
|
||||
JWT_PRIVATE_KEY="$(cat private.pem)"
|
||||
JWT_PUBLIC_KEY="$(cat public.pem)"
|
||||
EOF
|
||||
cp .env.example .env
|
||||
```
|
||||
|
||||
Write your JWT keys into `.env`:
|
||||
|
||||
```bash
|
||||
PRIVATE_KEY_LINE=$(awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' private.pem)
|
||||
PUBLIC_KEY_LINE=$(awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' public.pem)
|
||||
sed -i "s|JWT_PRIVATE_KEY=.*|JWT_PRIVATE_KEY=\"${PRIVATE_KEY_LINE}\"|" .env
|
||||
sed -i "s|JWT_PUBLIC_KEY=.*|JWT_PUBLIC_KEY=\"${PUBLIC_KEY_LINE}\"|" .env
|
||||
```
|
||||
|
||||
> **Note**: The `.env` file stores your private key. Do not commit it to version control.
|
||||
@@ -53,7 +56,7 @@ EOF
|
||||
Start PostgreSQL and Redis using Docker Compose (infrastructure services only):
|
||||
|
||||
```bash
|
||||
docker-compose up -d postgres redis
|
||||
docker compose up -d postgres redis
|
||||
```
|
||||
|
||||
Expected output:
|
||||
|
||||
Reference in New Issue
Block a user