- Add README with features, quick-start (local + Docker) and docs index - Add MIT LICENSE, root .gitignore and .env.example - Add docker-compose.yml (postgres + backend + frontend) - Add root package.json with install:all/dev helpers - Add Gitea CI workflow (backend syntax check, frontend build)
46 lines
1.1 KiB
YAML
46 lines
1.1 KiB
YAML
services:
|
|
postgres:
|
|
image: postgres:16-alpine
|
|
restart: unless-stopped
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB:-openstack}
|
|
POSTGRES_USER: ${POSTGRES_USER:-openstack}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-openstackpw}
|
|
volumes:
|
|
- pgdata:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER:-openstack}"]
|
|
interval: 5s
|
|
timeout: 3s
|
|
retries: 10
|
|
|
|
backend:
|
|
build: ./backend
|
|
restart: unless-stopped
|
|
depends_on:
|
|
postgres:
|
|
condition: service_healthy
|
|
environment:
|
|
DATABASE_URL: postgres://${POSTGRES_USER:-openstack}:${POSTGRES_PASSWORD:-openstackpw}@postgres:5432/${POSTGRES_DB:-openstack}
|
|
PORT: 3000
|
|
JWT_SECRET: ${JWT_SECRET:-change-me}
|
|
JWT_EXPIRES_IN: ${JWT_EXPIRES_IN:-7d}
|
|
CORS_ORIGIN: ${CORS_ORIGIN:-http://localhost:8080}
|
|
ports:
|
|
- "3000:3000"
|
|
|
|
frontend:
|
|
build:
|
|
context: ./frontend
|
|
args:
|
|
VITE_API_URL: /api
|
|
VITE_SOCKET_URL: ""
|
|
restart: unless-stopped
|
|
depends_on:
|
|
- backend
|
|
ports:
|
|
- "8080:80"
|
|
|
|
volumes:
|
|
pgdata:
|