55 lines
1.9 KiB
YAML
55 lines
1.9 KiB
YAML
# Simpler version without Traefik - exposes port 3000 directly
|
|
# Use this if you have your own reverse proxy or want direct access
|
|
|
|
services:
|
|
db:
|
|
image: postgres:16-alpine
|
|
container_name: letsbe-hub-db
|
|
env_file: .env
|
|
environment:
|
|
POSTGRES_USER: ${POSTGRES_USER:-letsbe_hub}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
POSTGRES_DB: ${POSTGRES_DB:-letsbe_hub}
|
|
volumes:
|
|
- hub-db-data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-letsbe_hub} -d ${POSTGRES_DB:-letsbe_hub}"]
|
|
interval: 5s
|
|
timeout: 5s
|
|
retries: 5
|
|
restart: unless-stopped
|
|
|
|
hub:
|
|
image: code.letsbe.solutions/letsbe/hub:${HUB_IMAGE_TAG:-master}
|
|
container_name: letsbe-hub-app
|
|
env_file: .env
|
|
ports:
|
|
- "127.0.0.1:3000:3000" # Only localhost, Nginx proxies to this
|
|
environment:
|
|
DATABASE_URL: postgresql://${POSTGRES_USER:-letsbe_hub}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB:-letsbe_hub}
|
|
NEXTAUTH_URL: ${HUB_URL}
|
|
NEXTAUTH_SECRET: ${NEXTAUTH_SECRET}
|
|
AUTH_TRUST_HOST: "true"
|
|
HUB_URL: ${HUB_URL}
|
|
CREDENTIAL_ENCRYPTION_KEY: ${CREDENTIAL_ENCRYPTION_KEY}
|
|
SETTINGS_ENCRYPTION_KEY: ${SETTINGS_ENCRYPTION_KEY}
|
|
DOCKER_REGISTRY_URL: ${DOCKER_REGISTRY_URL:-code.letsbe.solutions}
|
|
DOCKER_IMAGE_NAME: ${DOCKER_IMAGE_NAME:-letsbe/ansible-runner}
|
|
DOCKER_IMAGE_TAG: ${DOCKER_IMAGE_TAG:-master}
|
|
DOCKER_MAX_CONCURRENT: ${DOCKER_MAX_CONCURRENT:-3}
|
|
JOBS_HOST_DIR: ${JOBS_HOST_DIR:-/opt/letsbe-hub/jobs}
|
|
LOGS_HOST_DIR: ${LOGS_HOST_DIR:-/opt/letsbe-hub/logs}
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
- ${JOBS_HOST_DIR:-/opt/letsbe-hub/jobs}:/app/jobs
|
|
- ${LOGS_HOST_DIR:-/opt/letsbe-hub/logs}:/app/logs
|
|
user: "0:0"
|
|
depends_on:
|
|
db:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
hub-db-data:
|
|
name: letsbe-hub-db
|