You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

74 lines
2.4 KiB

services:
aitherboard:
container_name: aitherboard
# Build from source (always rebuilds - use --no-cache flag when running)
build:
context: .
dockerfile: Dockerfile
# Optional: override defaults from config.ts if needed
# Uncomment and modify if you want custom values:
# args:
# VITE_DEFAULT_RELAYS: "wss://theforest.nostr1.com,wss://nostr21.com,wss://nostr.land"
# VITE_THREAD_TIMEOUT_DAYS: "30"
# Note: To force rebuild: docker-compose build --no-cache aitherboard && docker-compose up -d
# Alternative: Using pre-built image (for production)
# Uncomment the image line below and comment out the build section above
# image: silberengel/aitherboard:latest
ports:
- "9876:9876"
environment:
- PORT=9876
- NODE_ENV=production
- PIPER_TTS_HOST=piper-tts
- PIPER_TTS_PORT=10200
restart: unless-stopped
depends_on:
piper-tts:
condition: service_healthy
networks:
- aitherboard-network
piper-tts:
container_name: piper-tts
# Option 1: Use pre-built image (recommended for production)
# Build and push the image first:
# 1. git clone https://github.com/rhasspy/wyoming-piper.git wyoming-piper
# 2. cd wyoming-piper
# 3. docker build -t your-registry/wyoming-piper:latest .
# 4. docker push your-registry/wyoming-piper:latest
# Then uncomment the image line below and update with your registry/image name
image: silberengel/wyoming-piper:latest
# Option 2: Build from source (for development or if no registry)
# Uncomment the build section below and comment out the image line above
#build:
#context: ./wyoming-piper
#dockerfile: Dockerfile
# Port 10200 is only used internally by aitherboard container
# No need to expose it to the host
expose:
- "10200"
command:
# --voice is required at startup but can be overridden in synthesize messages
# This is the default/fallback voice
- --voice
- en_US-lessac-medium
- --uri
- tcp://0.0.0.0:10200
- --data-dir
- /data
volumes:
- ./piper-data:/data
restart: unless-stopped
networks:
- aitherboard-network
healthcheck:
test: ["CMD-SHELL", "timeout 3 bash -c 'echo > /dev/tcp/localhost/10200' || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
networks:
aitherboard-network:
driver: bridge