diff --git a/audiomuse.yaml b/audiomuse.yaml new file mode 100644 index 0000000..1c7afd5 --- /dev/null +++ b/audiomuse.yaml @@ -0,0 +1,57 @@ +services: + audiomuse-ai: + image: ghcr.io/neptunehub/audiomuse-ai:latest + container_name: audiomuse-ai + restart: unless-stopped + networks: + - networking + ports: + - ${WEBUI_PORT_AUDIOMUSE:-8005}:8000 + environment: + SERVICE_TYPE: "flask" + TZ: ${TIMEZONE:?err} + POSTGRES_USER: ${POSTGRESQL_USERNAME:?err} + POSTGRES_PASSWORD: ${POSTGRESQL_PASSWORD:?err} + POSTGRES_DB: audiomusedb + POSTGRES_HOST: postgresql + POSTGRES_PORT: "5432" + REDIS_URL: redis://valkey:6379/0 + TEMP_DIR: /app/temp_audio + FRONTEND_PORT: "8000" + volumes: + - ${FOLDER_FOR_MEDIA:?err}:/library + - ${FOLDER_FOR_MORE:?err}:/more + - temp-audio-flask:/app/temp_audio + labels: + - traefik.enable=true + - traefik.http.routers.audiomuse.service=audiomuse + - traefik.http.routers.audiomuse.rule=Host(`audiomuse.${CLOUDFLARE_DNS_ZONE:?err}`) + - traefik.http.routers.audiomuse.entrypoints=tunnel + - traefik.http.routers.audiomuse.middlewares=authentik-forwardauth@file,security-headers@file + - traefik.http.services.audiomuse.loadbalancer.server.scheme=http + - traefik.http.services.audiomuse.loadbalancer.server.port=8000 + + audiomuse-worker: + image: ghcr.io/neptunehub/audiomuse-ai:latest + container_name: audiomuse-worker + restart: unless-stopped + networks: + - networking + environment: + SERVICE_TYPE: "worker" + TZ: ${TIMEZONE:?err} + POSTGRES_USER: ${POSTGRESQL_USERNAME:?err} + POSTGRES_PASSWORD: ${POSTGRESQL_PASSWORD:?err} + POSTGRES_DB: audiomusedb + POSTGRES_HOST: postgresql + POSTGRES_PORT: "5432" + REDIS_URL: redis://valkey:6379/0 + TEMP_DIR: /app/temp_audio + volumes: + - ${FOLDER_FOR_MEDIA:?err}:/library + - ${FOLDER_FOR_MORE:?err}:/more + - temp-audio-worker:/app/temp_audio + +volumes: + temp-audio-flask: + temp-audio-worker: