From 75a4dc69f9f9912cc6efa7d45299dc6802355c8d Mon Sep 17 00:00:00 2001 From: Dylan Bolger Date: Sun, 28 Apr 2024 00:31:28 -0500 Subject: add compose files --- external/compose.yaml | 34 +++++++++++++++++++++++++++++ external/freshrss/compose.yaml | 30 ++++++++++++++++++++++++++ external/homeassistant/compose.yaml | 11 ++++++++++ external/personal-blog/compose.yaml | 15 +++++++++++++ external/personal-cgit/compose.yaml | 13 +++++++++++ external/personal-website/compose.yaml | 11 ++++++++++ external/umami/compose.yaml | 38 +++++++++++++++++++++++++++++++++ external/vaultwarden/compose.yaml | 11 ++++++++++ internal/adguardhome/compose.yaml | 16 ++++++++++++++ internal/compose.yaml | 30 ++++++++++++++++++++++++++ internal/cu-energy-service/compose.yaml | 12 +++++++++++ internal/eclipse-mosquitto/compose.yaml | 14 ++++++++++++ internal/faster-whisper/compose.yaml | 13 +++++++++++ internal/matter-server/compose.yaml | 13 +++++++++++ internal/openwakeword/compose.yaml | 16 ++++++++++++++ internal/piper/compose.yaml | 13 +++++++++++ 16 files changed, 290 insertions(+) create mode 100644 external/compose.yaml create mode 100644 external/freshrss/compose.yaml create mode 100644 external/homeassistant/compose.yaml create mode 100644 external/personal-blog/compose.yaml create mode 100644 external/personal-cgit/compose.yaml create mode 100644 external/personal-website/compose.yaml create mode 100644 external/umami/compose.yaml create mode 100644 external/vaultwarden/compose.yaml create mode 100644 internal/adguardhome/compose.yaml create mode 100644 internal/compose.yaml create mode 100644 internal/cu-energy-service/compose.yaml create mode 100644 internal/eclipse-mosquitto/compose.yaml create mode 100644 internal/faster-whisper/compose.yaml create mode 100644 internal/matter-server/compose.yaml create mode 100644 internal/openwakeword/compose.yaml create mode 100644 internal/piper/compose.yaml diff --git a/external/compose.yaml b/external/compose.yaml new file mode 100644 index 0000000..91eb626 --- /dev/null +++ b/external/compose.yaml @@ -0,0 +1,34 @@ +name: 'external' +services: + homeassistant: + extends: + file: ./homeassistant/compose.yaml + service: homeassistant + freshrss: + extends: + file: ./freshrss/compose.yaml + service: freshrss + personal-blog: + extends: + file: ./personal-blog/compose.yaml + service: personal-blog + personal-cgit: + extends: + file: ./personal-cgit/compose.yaml + service: personal-cgit + personal-website: + extends: + file: ./personal-website/compose.yaml + service: personal-website + vaultwarden: + extends: + file: ./vaultwarden/compose.yaml + service: vaultwarden + umami: + extends: + file: ./umami/compose.yaml + service: umami + umami-db: + extends: + file: ./umami/compose.yaml + service: umami-db diff --git a/external/freshrss/compose.yaml b/external/freshrss/compose.yaml new file mode 100644 index 0000000..903b525 --- /dev/null +++ b/external/freshrss/compose.yaml @@ -0,0 +1,30 @@ +name: freshrss +version: '3.8' +services: + freshrss: + image: freshrss/freshrss + container_name: freshrss + restart: always + logging: + options: + max-size: 10m + volumes: + - "${FRESHRSS_DATA_PATH}:/var/www/FreshRSS/data" + - "${FRESHRSS_EXTENSIONS_PATH}:/var/www/FreshRSS/extensions" + ports: + - "${FRESHRSS_PORT}:80" + environment: + TZ: America/Chicago + CRON_MIN: 13,43 + FRESHRSS_ENV: development + FRESHRSS_INSTALL: |- + --api_enabled + --base_url ${FRESHRSS_BASE_URL} + --default_user ${FRESHRSS_USER} + --language en + FRESHRSS_USER: |- + --api_password ${FRESHRSS_ADMIN_API_PASSWORD} + --email ${FRESHRSS_ADMIN_EMAIL} + --language en + --password ${FRESHRSS_ADMIN_PASSWORD} + --user ${FRESHRSS_USER} diff --git a/external/homeassistant/compose.yaml b/external/homeassistant/compose.yaml new file mode 100644 index 0000000..b95a7ae --- /dev/null +++ b/external/homeassistant/compose.yaml @@ -0,0 +1,11 @@ +name: homeassistant +services: + homeassistant: + container_name: homeassistant + image: "ghcr.io/home-assistant/home-assistant:stable" + volumes: + - "${HOMEASSISTANT_DATA_PATH}:/config" + - /etc/localtime:/etc/localtime:ro + restart: always + privileged: true + network_mode: host diff --git a/external/personal-blog/compose.yaml b/external/personal-blog/compose.yaml new file mode 100644 index 0000000..61b11eb --- /dev/null +++ b/external/personal-blog/compose.yaml @@ -0,0 +1,15 @@ +name: personal-blog +version: '3.8' +services: + personal-blog: + hostname: blog + restart: always + container_name: personal-blog + image: personal-blog + build: + dockerfile: "${BLOG_DOCKERFILE_PATH}" + volumes: + - "${BLOG_STORAGE_PATH}:/app/storage" + - "${BLOG_CONTENT_PATH}:/app/content" + ports: + - "${BLOG_PORT}:80" diff --git a/external/personal-cgit/compose.yaml b/external/personal-cgit/compose.yaml new file mode 100644 index 0000000..347df51 --- /dev/null +++ b/external/personal-cgit/compose.yaml @@ -0,0 +1,13 @@ +name: personal-cgit +version: '3.8' +services: + personal-cgit: + image: cgit-pi + container_name: personal-cgit + hostname: cgit + volumes: + - "${CGIT_REPOS_PATH}:/srv/git/" + - "${CGIT_CGITRC_PATH}:/etc/cgitrc" + restart: always + ports: + - "${CGIT_PORT}:80" diff --git a/external/personal-website/compose.yaml b/external/personal-website/compose.yaml new file mode 100644 index 0000000..ed2e675 --- /dev/null +++ b/external/personal-website/compose.yaml @@ -0,0 +1,11 @@ +name: personal-website +version: '3.8' +services: + personal-website: + container_name: personal-website + image: nginx + volumes: + - "${WEBSITE_DATA_PATH}:/usr/share/nginx/html" + ports: + - "${WEBSITE_PORT}:80" + restart: always diff --git a/external/umami/compose.yaml b/external/umami/compose.yaml new file mode 100644 index 0000000..0672c19 --- /dev/null +++ b/external/umami/compose.yaml @@ -0,0 +1,38 @@ +version: '3' +services: + umami: + container_name: umami + image: ghcr.io/umami-software/umami:postgresql-latest + ports: + - "${UMAMI_WEB_PORT}:3000" + environment: + IGNORE_IP: "${UMAMI_IGNORE_IP}" + DATABASE_URL: "${UMAMI_DB_URL}" + DATABASE_TYPE: "${UMAMI_DB_TYPE}" + APP_SECRET: "${UMAMI_APP_SECRET}" + #depends_on: + #db: + #condition: service_healthy + restart: always + #healthcheck: + #test: ["CMD-SHELL", "curl http://localhost:3001/api/heartbeat"] + #interval: 5s + #timeout: 5s + # retries: 5 + umami-db: + container_name: 'umami-db' + image: postgres:15-alpine + environment: + POSTGRES_DB: umami + POSTGRES_USER: umami + POSTGRES_PASSWORD: umami + volumes: + - "${UMAMI_DB_DATA_PATH}:/var/lib/postgresql/data" + ports: + - "${UMAMI_DB_PORT}:5432" + restart: always + healthcheck: + test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] + interval: 5s + timeout: 5s + retries: 5 diff --git a/external/vaultwarden/compose.yaml b/external/vaultwarden/compose.yaml new file mode 100644 index 0000000..3225964 --- /dev/null +++ b/external/vaultwarden/compose.yaml @@ -0,0 +1,11 @@ +name: vaultwarden +version: '3.8' +services: + vaultwarden: + image: vaultwarden/server:latest + container_name: vaultwarden + restart: always + volumes: + - "${VAULTWARDEN_DATA_PATH}:/data" + ports: + - "${VAULTWARDEN_PORT}:80" diff --git a/internal/adguardhome/compose.yaml b/internal/adguardhome/compose.yaml new file mode 100644 index 0000000..8cfb0c4 --- /dev/null +++ b/internal/adguardhome/compose.yaml @@ -0,0 +1,16 @@ +name: adguardhome +version: '3.8' +services: + adguardhome: + image: adguard/adguardhome + container_name: adguardhome + ports: + - "${ADGUARDHOME_DNS_PORT}:53/tcp" + - "${ADGUARDHOME_DNS_PORT}:53/udp" + - "${ADGUARDHOME_DOQ_PORT}:784/udp" + - "${ADGUARDHOME_DOT_PORT}:853/tcp" + - "${ADGUARDHOME_WEB_PORT}:3030/tcp" + volumes: + - "${ADGUARDHOME_WORK_PATH}:/opt/adguardhome/work" + - "${ADGUARDHOME_CONF_PATH}:/opt/adguardhome/conf" + restart: unless-stopped diff --git a/internal/compose.yaml b/internal/compose.yaml new file mode 100644 index 0000000..fa1af18 --- /dev/null +++ b/internal/compose.yaml @@ -0,0 +1,30 @@ +name: 'internal' +services: + adguardhome: + extends: + file: ./adguardhome/compose.yaml + service: adguardhome + cu-energy-service: + extends: + file: ./cu-energy-service/compose.yaml + service: cu-energy-service + matter-server: + extends: + file: ./matter-server/compose.yaml + service: matter-server + piper: + extends: + file: ./piper/compose.yaml + service: piper + openwakeword: + extends: + file: ./openwakeword/compose.yaml + service: openwakeword + faster-whisper: + extends: + file: ./faster-whisper/compose.yaml + service: faster-whisper + eclipse-mosquitto: + extends: + file: ./eclipse-mosquitto/compose.yaml + service: eclipse-mosquitto diff --git a/internal/cu-energy-service/compose.yaml b/internal/cu-energy-service/compose.yaml new file mode 100644 index 0000000..4c6db7b --- /dev/null +++ b/internal/cu-energy-service/compose.yaml @@ -0,0 +1,12 @@ +name: cu-energy-service +version: '3.8' +services: + cu-energy-service: + restart: always + container_name: cu-energy-service + image: energy-service + volumes: + - "/etc/timezone:/etc/timezone:ro" + - "/etc/localtime:/etc/localtime:ro" + ports: + - "${ENERGY_SERVICE_PORT}:80" diff --git a/internal/eclipse-mosquitto/compose.yaml b/internal/eclipse-mosquitto/compose.yaml new file mode 100644 index 0000000..1d193f9 --- /dev/null +++ b/internal/eclipse-mosquitto/compose.yaml @@ -0,0 +1,14 @@ +name: eclipse-mosquitto +version: '3.8' +services: + eclipse-mosquitto: + image: eclipse-mosquitto + container_name: eclipse-mosquitto + volumes: + - "${ECLIPSE_MQTT_ROOT_PATH}:/mosquitto" + - "${ECLIPSE_MQTT_CONFIG_PATH}:/mosquitto/config" + - "${ECLIPSE_MQTT_DATA_PATH}:/mosquitto/data" + - "${ECLIPSE_MQTT_LOG_PATH}:/mosquitto/log" + ports: + - ${MQTT_LISTEN_PORT}:1883 + - ${MQTT_WEBSOCKET_LISTEN_PORT}:9001 diff --git a/internal/faster-whisper/compose.yaml b/internal/faster-whisper/compose.yaml new file mode 100644 index 0000000..63d43db --- /dev/null +++ b/internal/faster-whisper/compose.yaml @@ -0,0 +1,13 @@ +name: faster-whisper +version: '3.8' +services: + faster-whisper: + image: rhasspy/wyoming-whisper + container_name: faster-whisper + ports: + - ${FASTER_WHISPER_PORT}:10300 + volumes: + - "${FASTER_WHISPER_DATA_PATH}:/data" + command: --model tiny-int8 --language en --beam-size 2 + restart: unless-stopped + diff --git a/internal/matter-server/compose.yaml b/internal/matter-server/compose.yaml new file mode 100644 index 0000000..d282e23 --- /dev/null +++ b/internal/matter-server/compose.yaml @@ -0,0 +1,13 @@ +name: matter-server +version: '3.8' +services: + matter-server: + container_name: matter-server + image: ghcr.io/home-assistant-libs/python-matter-server:stable + restart: always + security_opt: + - apparmor=unconfined + volumes: + - "${MATTER_SERVER_PATH}:/data" + - /run/dbus:/run/dbus:ro + network_mode: host diff --git a/internal/openwakeword/compose.yaml b/internal/openwakeword/compose.yaml new file mode 100644 index 0000000..57f6855 --- /dev/null +++ b/internal/openwakeword/compose.yaml @@ -0,0 +1,16 @@ +name: openwakeword +version: '3.8' +services: + openwakeword: + container_name: openwakeword + image: rhasspy/wyoming-openwakeword + user: 1001:1001 + volumes: + - "${OWW_DATA_PATH}:/data" + - "${OWW_CUSTOM_PATH}:/custom" + environment: + - TZ=America/Chicago + command: --preload-model 'ok_nabu' --custom-model-dir /custom + restart: unless-stopped + ports: + - ${OWW_PORT}:10400 diff --git a/internal/piper/compose.yaml b/internal/piper/compose.yaml new file mode 100644 index 0000000..d1cf746 --- /dev/null +++ b/internal/piper/compose.yaml @@ -0,0 +1,13 @@ + +name: piper +version: '3.8' +services: + piper: + container_name: piper + image: rhasspy/wyoming-piper + ports: + - '${PIPER_PORT}:10200' + volumes: + - '${PIPER_DATA_PATH}:/data' + command: '--voice en_US-lessac-medium' + -- cgit v1.2.3