initial commit

This commit is contained in:
Daniel Noulet 2026-10-07 15:03:50 +02:00
commit 23816d00f7
71 changed files with 14497 additions and 0 deletions

71
docker-compose.yml Normal file
View file

@ -0,0 +1,71 @@
# =============================================================================
# go-doc development stack.
#
# Both services bind-mount the repository so edits are live-synchronised with the
# host: the Go backend recompiles through `go run` and Vite serves hot module
# replacement. The data directory is mounted as well, so the flat-file Markdown
# and JSON written by a container is the same file the host tooling reads.
# =============================================================================
name: go-doc
services:
api:
build:
context: ./backend
dockerfile: Dockerfile
image: go-doc/api:dev
container_name: godoc-api
command: ["go", "run", "main.go", "-addr", "0.0.0.0:8080"]
environment:
GO_DOC_DATA_DIR: /app/data
GO_DOC_LOG_FORMAT: json
GO_DOC_LOG_LEVEL: info
GO_LOOSE_BASE_URL: https://auth-dev.urpi.be
GO_LOOSE_CLIENT_ID: go-doc
GO_LOOSE_CLIENT_SECRET: local-dev-secret
GO_LOOSE_REDIRECT_URL: https://doc-dev.urpi.be/auth/callback
volumes:
- ./backend:/app/backend
- ./data:/app/data
- api-go-cache:/root/.cache/go-build
- api-go-mod:/go/pkg/mod
ports:
- "8080:8080"
working_dir: /app/backend
healthcheck:
test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8080/api/health"]
interval: 10s
timeout: 3s
retries: 12
start_period: 20s
networks: [godoc]
frontend:
build:
context: ./frontend
dockerfile: Dockerfile
image: go-doc/frontend:dev
container_name: godoc-frontend
command: ["npm", "run", "dev", "--", "--host", "0.0.0.0", "--port", "5173"]
environment:
GO_DOC_BACKEND: http://api:8080
volumes:
- ./frontend:/app
- frontend-node-modules:/app/node_modules
ports:
- "5173:5173"
working_dir: /app
depends_on:
api:
condition: service_healthy
networks: [godoc]
volumes:
api-go-cache:
api-go-mod:
frontend-node-modules:
networks:
godoc:
driver: bridge