diff --git a/compose/hf-pdocker-01/linkedstorm/.env.example b/compose/hf-pdocker-01/linkedstorm/.env.example new file mode 100644 index 0000000..e8ceefa --- /dev/null +++ b/compose/hf-pdocker-01/linkedstorm/.env.example @@ -0,0 +1,6 @@ +SPEACHES_URL=http://192.168.86.150:8000 +OLLAMA_URL=http://192.168.86.150:11434 +OLLAMA_MODEL=qwen2.5:14b +LIVEKIT_API_KEY=your-livekit-api-key +LIVEKIT_API_SECRET=your-livekit-api-secret +CLIP_RETENTION_DAYS=30 diff --git a/compose/hf-pdocker-01/linkedstorm/docker-compose.yml b/compose/hf-pdocker-01/linkedstorm/docker-compose.yml new file mode 100644 index 0000000..a8a962e --- /dev/null +++ b/compose/hf-pdocker-01/linkedstorm/docker-compose.yml @@ -0,0 +1,70 @@ +services: + linkedstorm-pipeline: + build: + context: /opt/linkedstorm + dockerfile: pipeline/Dockerfile + container_name: linkedstorm-pipeline + restart: unless-stopped + ports: + - "8300:8300" + volumes: + - /mnt/docker-data/configs/linkedstorm:/data + environment: + - DB_PATH=/data/linkedstorm.db + - CLIPS_DIR=/data/clips + - SPEACHES_URL=${SPEACHES_URL:-http://192.168.86.150:8000} + - OLLAMA_URL=${OLLAMA_URL:-http://192.168.86.150:11434} + - LIVEKIT_API_KEY=${LIVEKIT_API_KEY:-devkey} + - LIVEKIT_API_SECRET=${LIVEKIT_API_SECRET:-devsecret} + networks: + - linkedstorm-net + labels: + - com.centurylinklabs.watchtower.enable=false + + linkedstorm-api: + build: + context: /opt/linkedstorm + dockerfile: api/Dockerfile + container_name: linkedstorm-api + restart: unless-stopped + ports: + - "8310:8310" + volumes: + - /mnt/docker-data/configs/linkedstorm:/data + environment: + - DB_PATH=/data/linkedstorm.db + - CLIPS_DIR=/data/clips + - PIPELINE_INTERNAL_URL=http://linkedstorm-pipeline:8300 + - OLLAMA_URL=${OLLAMA_URL:-http://192.168.86.150:11434} + - OLLAMA_MODEL=${OLLAMA_MODEL:-qwen2.5:14b} + - LIVEKIT_API_KEY=${LIVEKIT_API_KEY:-devkey} + - LIVEKIT_API_SECRET=${LIVEKIT_API_SECRET:-devsecret} + networks: + - linkedstorm-net + depends_on: + - linkedstorm-pipeline + labels: + - com.centurylinklabs.watchtower.enable=false + + linkedstorm-cron: + build: + context: /opt/linkedstorm + dockerfile: cron/Dockerfile + container_name: linkedstorm-cron + restart: unless-stopped + volumes: + - /mnt/docker-data/configs/linkedstorm:/data + environment: + - DB_PATH=/data/linkedstorm.db + - CLIPS_DIR=/data/clips + - OLLAMA_URL=${OLLAMA_URL:-http://192.168.86.150:11434} + - OLLAMA_MODEL=${OLLAMA_MODEL:-qwen2.5:14b} + - CLIP_RETENTION_DAYS=${CLIP_RETENTION_DAYS:-30} + networks: + - linkedstorm-net + labels: + - com.centurylinklabs.watchtower.enable=false + +networks: + linkedstorm-net: + driver: bridge diff --git a/stacks/traefik/dynamic/linkedstorm.yml b/stacks/traefik/dynamic/linkedstorm.yml new file mode 100644 index 0000000..c01602e --- /dev/null +++ b/stacks/traefik/dynamic/linkedstorm.yml @@ -0,0 +1,15 @@ +http: + routers: + linkedstorm: + rule: "Host(`linkedstorm.hobbs.farm`)" + entryPoints: + - websecure + service: linkedstorm + tls: + certResolver: letsencrypt + + services: + linkedstorm: + loadBalancer: + servers: + - url: "http://192.168.86.192:8310"