Restore 3 services that were previously removed due to health issues, bringing the stack to 16 services. Add companion services (Elasticsearch, Redis) required by TubeArchivist. Key changes: - Add ArchiveBox with proper health check and admin credentials - Add TubeArchivist with ta-redis and ta-elasticsearch companions - Add Atuin server with correct `server start` command and TCP health check - Fix Wakapi health check to use /app/healthcheck binary - Add Grafana provisioning bind mount for datasources/dashboards - Add Homepage config bind mount for docker.yaml - Fix Docker Socket Proxy label (remove unreachable localhost:4005 href) - Fix credentials: INFLUXDB_ADMIN_USER and TA_USERNAME → admin - Fix Grafana datasources.yml user to match - Fix homepage/docker.yaml to contain Docker provider config - Add all missing env vars (TA_PASSWORD, ELASTIC_PASSWORD, ES_JAVA_OPTS, etc.) - Remove Pi-hole port 53 bindings (DNS not needed for demo) - Bump template version to 2.0 💘 Generated with Crush Assisted-by: GLM-5.1 via Crush <crush@charm.land>
95 lines
2.3 KiB
Bash
95 lines
2.3 KiB
Bash
# TSYS Developer Support Stack - Demo Environment Configuration
|
|
# Project Identification
|
|
COMPOSE_PROJECT_NAME=kneldevstack-supportstack-demo
|
|
COMPOSE_NETWORK_NAME=kneldevstack-supportstack-demo-network
|
|
|
|
# Dynamic User Detection (to be auto-populated by scripts)
|
|
DEMO_UID=1000
|
|
DEMO_GID=1000
|
|
DEMO_DOCKER_GID=986
|
|
|
|
# Port Assignments (4000-4099 range)
|
|
HOMEPAGE_PORT=4000
|
|
DOCKER_SOCKET_PROXY_PORT=4005
|
|
PIHOLE_PORT=4006
|
|
DOCKHAND_PORT=4007
|
|
INFLUXDB_PORT=4008
|
|
GRAFANA_PORT=4009
|
|
DRAWIO_PORT=4010
|
|
KROKI_PORT=4011
|
|
ATOMIC_TRACKER_PORT=4012
|
|
ARCHIVEBOX_PORT=4013
|
|
TUBE_ARCHIVIST_PORT=4014
|
|
WAKAPI_PORT=4015
|
|
MAILHOG_PORT=4017
|
|
ATUIN_PORT=4018
|
|
|
|
# Demo Credentials (CLEARLY MARKED AS DEMO ONLY)
|
|
DEMO_ADMIN_USER=admin
|
|
DEMO_ADMIN_PASSWORD=demo_password
|
|
DEMO_GRAFANA_ADMIN_PASSWORD=demo_password
|
|
DEMO_DOCKHAND_PASSWORD=demo_password
|
|
|
|
# Network Configuration
|
|
NETWORK_SUBNET=192.168.3.0/24
|
|
NETWORK_GATEWAY=192.168.3.1
|
|
|
|
# Resource Limits
|
|
MEMORY_LIMIT=512m
|
|
CPU_LIMIT=0.25
|
|
|
|
# Health Check Timeouts
|
|
HEALTH_CHECK_TIMEOUT=10s
|
|
HEALTH_CHECK_INTERVAL=30s
|
|
HEALTH_CHECK_RETRIES=3
|
|
|
|
# Docker Socket Proxy Configuration
|
|
DOCKER_SOCKET_PROXY_CONTAINERS=1
|
|
DOCKER_SOCKET_PROXY_IMAGES=1
|
|
DOCKER_SOCKET_PROXY_NETWORKS=1
|
|
DOCKER_SOCKET_PROXY_VOLUMES=1
|
|
DOCKER_SOCKET_PROXY_EXEC=0
|
|
DOCKER_SOCKET_PROXY_PRIVILEGED=0
|
|
DOCKER_SOCKET_PROXY_SERVICES=0
|
|
DOCKER_SOCKET_PROXY_TASKS=0
|
|
DOCKER_SOCKET_PROXY_SECRETS=0
|
|
DOCKER_SOCKET_PROXY_CONFIGS=0
|
|
DOCKER_SOCKET_PROXY_PLUGINS=0
|
|
|
|
# InfluxDB Configuration
|
|
INFLUXDB_ORG=tsysdemo
|
|
INFLUXDB_BUCKET=demo_metrics
|
|
INFLUXDB_ADMIN_USER=admin
|
|
INFLUXDB_ADMIN_PASSWORD=demo_password
|
|
INFLUXDB_AUTH_TOKEN=demo_token_replace_in_production
|
|
|
|
# Grafana Configuration
|
|
GF_SECURITY_ADMIN_USER=admin
|
|
GF_SECURITY_ADMIN_PASSWORD=demo_password
|
|
GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource
|
|
|
|
# Pi-hole Configuration
|
|
PIHOLE_WEBPASSWORD=demo_password
|
|
WEBTHEME=default-darker
|
|
|
|
# ArchiveBox Configuration
|
|
ARCHIVEBOX_SECRET_KEY=demo_secret_replace_in_production
|
|
|
|
# Tube Archivist Configuration
|
|
TA_HOST=http://localhost:4014
|
|
TA_PORT=4014
|
|
TA_DEBUG=false
|
|
|
|
# Wakapi Configuration
|
|
WAKAPI_PASSWORD_SALT=demo_salt_replace_in_production
|
|
|
|
# Atuin Configuration
|
|
ATUIN_HOST=0.0.0.0
|
|
ATUIN_OPEN_REGISTRATION=true
|
|
TA_PASSWORD=demo_password
|
|
ELASTIC_PASSWORD=demo_password
|
|
ES_JAVA_OPTS="-Xms512m -Xmx512m"
|
|
ARCHIVEBOX_ADMIN_USER=admin
|
|
ARCHIVEBOX_ADMIN_PASSWORD=demo_password
|
|
TA_USERNAME=admin
|