Merge branch 'coollabsio:main' into vaultwarden-fix

This commit is contained in:
Evan
2024-05-27 16:04:02 +08:00
committed by GitHub
275 changed files with 4106 additions and 1928 deletions

View File

@@ -32,7 +32,7 @@ services:
redis:
condition: service_started
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -16,7 +16,7 @@ services:
volumes:
- stacks-data:/appsmith-stacks
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -11,7 +11,6 @@ x-logging: &x-logging
options:
max-file: '5'
max-size: '10m'
version: '3'
services:
appwrite:

View File

@@ -4,8 +4,6 @@
# logo: svgs/authentik.png
# port: 9000
version: "3.4"
services:
postgresql:
image: docker.io/library/postgres:12-alpine

View File

@@ -15,7 +15,7 @@ services:
volumes:
- babybuddy-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -13,7 +13,7 @@ services:
volumes:
- budge-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -17,7 +17,7 @@ services:
depends_on:
- mariadb
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10

View File

@@ -17,7 +17,7 @@ services:
depends_on:
- mysql
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10
@@ -31,7 +31,7 @@ services:
- MYSQL_USER=$SERVICE_USER_CLASSICPRESS
- MYSQL_PASSWORD=$SERVICE_PASSWORD_CLASSICPRESS
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -11,7 +11,7 @@ services:
environment:
- SERVICE_FQDN_CLASSICPRESS
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10

View File

@@ -18,7 +18,7 @@ services:
volumes:
- code-server-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8443"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8443"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -11,7 +11,7 @@ services:
volumes:
- dashboard-data:/app/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -26,7 +26,7 @@ services:
- REDIS_PORT=6379
- WEBSOCKETS_ENABLED=true
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:8055/admin/login"]
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8055/admin/login"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -22,7 +22,7 @@ services:
- WEBSOCKETS_ENABLED=true
healthcheck:
test:
["CMD", "wget", "-q", "--spider", "http://localhost:8055/admin/login"]
["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8055/admin/login"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -14,7 +14,7 @@ services:
volumes:
- dokuwiki-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -16,7 +16,7 @@ services:
- duplicati-config:/config
- duplicati-backups:/backups
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8200"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8200"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -17,7 +17,7 @@ services:
- emby-tvshows:/tvshows
- emby-movies:/movies
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8096"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8096"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -14,7 +14,7 @@ services:
volumes:
- embystat-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:6555"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:6555"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -20,7 +20,7 @@ services:
read_only: true
content: "{}"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -21,7 +21,7 @@ services:
volumes:
- firefly-upload:/var/www/html/storage/upload
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080"]
interval: 5s
timeout: 20s
retries: 10
@@ -42,7 +42,7 @@ services:
"mysqladmin",
"ping",
"-h",
"localhost",
"127.0.0.1",
"-uroot",
"-p${SERVICE_PASSWORD_MYSQLROOT}",
]

View File

@@ -6,7 +6,7 @@
services:
formbricks:
image: formbricks/formbricks:latest
image: ghcr.io/formbricks/formbricks:latest
environment:
- SERVICE_FQDN_FORMBRICKS_3000
- WEBAPP_URL=$SERVICE_FQDN_FORMBRICKS
@@ -42,7 +42,7 @@ services:
postgresql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -41,7 +41,7 @@ services:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -25,7 +25,7 @@ services:
mariadb:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -25,7 +25,7 @@ services:
mysql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15
@@ -40,7 +40,7 @@ services:
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -25,7 +25,7 @@ services:
postgresql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -13,11 +13,11 @@ services:
ports:
- 22222:22
volumes:
- gitea-data:/var/lib/gitea
- gitea-data:/data
- gitea-timezone:/etc/timezone:ro
- gitea-localtime:/etc/localtime:ro
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -4,7 +4,6 @@
# logo: svgs/glitchtip.png
# port: 8080
version: "3.8"
services:
postgres:
image: postgres:16-alpine

View File

@@ -20,7 +20,7 @@ services:
volumes:
- grafana-data:/var/lib/grafana
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/api/health"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -15,7 +15,7 @@ services:
volumes:
- grafana-data:/var/lib/grafana
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/health"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/api/health"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -14,7 +14,7 @@ services:
volumes:
- grocy-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -13,7 +13,7 @@ services:
volumes:
- heimdall-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -23,7 +23,7 @@ services:
- DB_USERNAME=${SERVICE_USER_MYSQL}
- DB_PASSWORD=${SERVICE_PASSWORD_MYSQL}
healthcheck:
test: ['CMD', 'curl', '-f', 'http://localhost:9000']
test: ['CMD', 'curl', '-f', 'http://127.0.0.1:9000']
interval: 5s
timeout: 20s
retries: 10
@@ -94,7 +94,7 @@ services:
"mysqladmin",
"ping",
"-h",
"localhost",
"127.0.0.1",
"-uroot",
"-p${SERVICE_PASSWORD_MYSQLROOT}",
]

View File

@@ -18,7 +18,7 @@ services:
- jellyfin-tvshows:/data/tvshows
- jellyfin-movies:/data/movies
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8096"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8096"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -18,7 +18,7 @@ services:
elasticsearch:
image: kuzzleio/elasticsearch:7
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:9200" ]
test: [ "CMD", "curl", "-f", "http://127.0.0.1:9200" ]
interval: 2s
timeout: 2s
retries: 10
@@ -51,7 +51,7 @@ services:
sysctls:
- net.core.somaxconn=8192
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:7512/_healthcheck" ]
test: [ "CMD", "curl", "-f", "http://127.0.0.1:7512/_healthcheck" ]
timeout: 1s
interval: 2s
retries: 30

View File

@@ -0,0 +1,56 @@
# documentation: https://listmonk.app/
# slogan: Self-hosted newsletter and mailing list manager
# tags: newsletter, mailing list, self-hosted, open source
# logo: svgs/listmonk.svg
# port: 9000
services:
listmonk:
image: listmonk/listmonk:latest
environment:
- SERVICE_FQDN_LISTMONK_9000
- LISTMONK_app__address=0.0.0.0:9000
- LISTMONK_db__host=postgres
- LISTMONK_db__name=listmonk
- LISTMONK_db__user=$SERVICE_USER_POSTGRES
- LISTMONK_db__password=$SERVICE_PASSWORD_POSTGRES
- LISTMONK_db__port=5432
- LISTMONK_app__admin_username=admin
- LISTMONK_app__admin_password=$SERVICE_PASSWORD_ADMIN
- TZ=Etc/UTC
volumes:
- "listmonk-data:/listmonk/uploads"
depends_on:
postgres:
condition: service_healthy
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:9000"]
interval: 5s
timeout: 20s
retries: 10
listmonk-initial-database-setup:
image: listmonk/listmonk:latest
command: "./listmonk --install --yes --idempotent"
restart: "no"
depends_on:
postgres:
condition: service_healthy
environment:
- LISTMONK_db__host=postgres
- LISTMONK_db__name=listmonk
- LISTMONK_db__user=$SERVICE_USER_POSTGRES
- LISTMONK_db__password=$SERVICE_PASSWORD_POSTGRES
- LISTMONK_db__port=5432
postgres:
image: "postgres:latest"
environment:
- POSTGRES_DB=listmonk
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES
- POSTGRES_USER=$SERVICE_USER_POSTGRES
volumes:
- "pg-data:/var/lib/postgresql/data"
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -18,7 +18,7 @@ services:
- ENDPOINT=$LOGTO_ENDPOINT
- ADMIN_ENDPOINT=$LOGTO_ADMIN_ENDPOINT
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:3002"]
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:3002"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -15,7 +15,7 @@ services:
volumes:
- meilisearch-data:/meili_data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:7700/health"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:7700/health"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -18,7 +18,7 @@ services:
- MB_DB_USER=$SERVICE_USER_POSTGRESQL
- MB_DB_PASS=$SERVICE_PASSWORD_POSTGRESQL
healthcheck:
test: curl --fail -I http://localhost:3000/api/health || exit 1
test: curl --fail -I http://127.0.0.1:3000/api/health || exit 1
interval: 5s
timeout: 20s
retries: 10

View File

@@ -13,7 +13,7 @@ services:
volumes:
- metube-downloads:/downloads
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8081"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8081"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -15,7 +15,7 @@ services:
volumes:
- minio-data:/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:9000/minio/health/live"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -27,7 +27,7 @@ services:
postgresql:
condition: service_healthy
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://localhost:5678/"]
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5678/"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -17,7 +17,7 @@ services:
volumes:
- n8n-data:/home/node/.n8n
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://localhost:5678/"]
test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:5678/"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -12,7 +12,7 @@ services:
- ALLOWED_REMOTE_DOMAINS=${ALLOWED_REMOTE_DOMAINS:-*}
- IMGPROXY_URL=${IMGPROXY_URL:-http://imgproxy:8080}
healthcheck:
test: "wget -qO- http://localhost:3000/health || exit 1"
test: "wget -qO- http://127.0.0.1:3000/health || exit 1"
interval: 2s
timeout: 10s
retries: 5

View File

@@ -15,7 +15,7 @@ services:
- nextcloud-config:/config
- nextcloud-data:/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -12,7 +12,7 @@ services:
volumes:
- nocodb-data:/usr/app/data/
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:8080"]
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8080"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -15,7 +15,7 @@ services:
volumes:
- odoo-web-data:/var/lib/odoo
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8069"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8069"]
interval: 2s
timeout: 10s
retries: 30

View File

@@ -15,7 +15,7 @@ services:
volumes:
- openblocks-data:/openblocks-stacks
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/health"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -13,7 +13,7 @@ services:
- TZ=Europe/Madrid
- DEBUG_MODE=false
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -2,7 +2,6 @@
# slogan: Penpot is the first Open Source design and prototyping platform for product teams.
# tags: penpot,design,prototyping,figma,open,source
version: "3.5"
services:
frontend:
image: "penpotapp/frontend:latest"
@@ -15,7 +14,7 @@ services:
- SERVICE_FQDN_FRONTEND
- PENPOT_FLAGS=${PENPOT_FRONTEND_FLAGS:-enable-login-with-password}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15
@@ -49,7 +48,7 @@ services:
- PENPOT_SMTP_TLS=${PENPOT_SMTP_TLS:-false}
- PENPOT_SMTP_SSL=${PENPOT_SMTP_SSL:-false}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:6060"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:6060"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -16,7 +16,7 @@ services:
volumes:
- phpmyadmin-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -4,7 +4,6 @@
# tags: analytics, privacy, google, alternative
# port: 8000
version: "3.3"
services:
plausible:
image: plausible/analytics:v2.0

View File

@@ -51,7 +51,7 @@ services:
volumes:
- minio-data:/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:9000/minio/health/live"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -14,7 +14,7 @@ services:
volumes:
- shlink-data:/etc/shlink/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080/rest/v3/health"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080/rest/v3/health"]
interval: 2s
timeout: 10s
retries: 15
@@ -25,7 +25,7 @@ services:
- SHLINK_SERVER_API_KEY=${SERVICE_BASE64_SHLINKAPIKEY}
- SHLINK_SERVER_URL=${SERVICE_FQDN_SHLINK}
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -11,7 +11,7 @@ services:
volumes:
- slash-data:/var/opt/slash
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:5231"]
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:5231"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -13,7 +13,7 @@ services:
volumes:
- snapdrop-config:/config
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -16,7 +16,7 @@ services:
- SERVICE_FQDN_SPDF_8080
- DOCKER_ENABLE_SECURITY=false
healthcheck:
test: 'curl --fail -I http://localhost:8080 || exit 1'
test: 'curl --fail -I http://127.0.0.1:8080 || exit 1'
interval: 5s
timeout: 20s
retries: 10

View File

@@ -169,11 +169,12 @@ services:
- anon
## Secure Realtime routes
- name: realtime-v1
- name: realtime-v1-ws
_comment: 'Realtime: /realtime/v1/* -> ws://realtime:4000/socket/*'
url: http://realtime-dev.supabase-realtime:4000/socket/
url: http://realtime-dev:4000/socket
protocol: ws
routes:
- name: realtime-v1-all
- name: realtime-v1-ws
strip_path: true
paths:
- /realtime/v1/
@@ -188,6 +189,26 @@ services:
allow:
- admin
- anon
- name: realtime-v1-rest
_comment: 'Realtime: /realtime/v1/* -> ws://realtime:4000/socket/*'
url: http://realtime-dev:4000/api
protocol: http
routes:
- name: realtime-v1-rest
strip_path: true
paths:
- /realtime/v1/api
plugins:
- name: cors
- name: key-auth
config:
hide_credentials: false
- name: acl
config:
hide_groups_header: true
allow:
- admin
- anon
## Storage routes: the storage server manages its own auth
- name: storage-v1
@@ -257,14 +278,14 @@ services:
config:
hide_credentials: true
supabase-studio:
image: supabase/studio:20240415-304bec8
image: supabase/studio:20240422-5cf8f30
healthcheck:
test:
[
"CMD",
"node",
"-e",
"require('http').get('http://localhost:3000/api/profile', (r) => {if (r.statusCode !== 200) throw new Error(r.statusCode)})",
"require('http').get('http://127.0.0.1:3000/api/profile', (r) => {if (r.statusCode !== 200) throw new Error(r.statusCode)})",
]
timeout: 5s
interval: 5s
@@ -293,9 +314,9 @@ services:
# Uncomment to use Big Query backend for analytics
# NEXT_ANALYTICS_BACKEND_PROVIDER=bigquery
supabase-db:
image: supabase/postgres:15.1.0.147
image: supabase/postgres:15.1.1.41
healthcheck:
test: pg_isready -U postgres -h localhost
test: pg_isready -U postgres -h 127.0.0.1
interval: 5s
timeout: 5s
retries: 10
@@ -572,10 +593,13 @@ services:
create schema if not exists _analytics;
alter schema _analytics owner to :pguser;
# Use named volume to persist pgsodium decryption key between restarts
- supabase-db-config:/etc/postgresql-custom
supabase-analytics:
image: supabase/logflare:1.4.0
healthcheck:
test: ["CMD", "curl", "http://localhost:4000/health"]
test: ["CMD", "curl", "http://127.0.0.1:4000/health"]
timeout: 5s
interval: 5s
retries: 10
@@ -600,6 +624,7 @@ services:
- LOGFLARE_SINGLE_TENANT=true
- LOGFLARE_SINGLE_TENANT_MODE=true
- LOGFLARE_SUPABASE_MODE=true
- LOGFLARE_MIN_CLUSTER_SIZE=1
# Comment variables to use Big Query backend for analytics
- POSTGRES_BACKEND_URL=postgresql://supabase_admin:${SERVICE_PASSWORD_POSTGRES}@${POSTGRES_HOST:-supabase-db}:${POSTGRES_PORT:-5432}/${POSTGRES_DB:-postgres}
@@ -665,7 +690,7 @@ services:
kong: 'starts_with(string!(.appname), "supabase-kong")'
auth: 'starts_with(string!(.appname), "supabase-auth")'
rest: 'starts_with(string!(.appname), "supabase-rest")'
realtime: 'starts_with(string!(.appname), "realtime-dev.supabase-realtime")'
realtime: 'starts_with(string!(.appname), "realtime-dev")'
storage: 'starts_with(string!(.appname), "supabase-storage")'
functions: 'starts_with(string!(.appname), "supabase-functions")'
db: 'starts_with(string!(.appname), "supabase-db")'
@@ -797,7 +822,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=gotrue.logs.prod&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=gotrue.logs.prod&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_realtime:
type: 'http'
inputs:
@@ -807,7 +832,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=realtime.logs.prod&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=realtime.logs.prod&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_rest:
type: 'http'
inputs:
@@ -817,7 +842,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=postgREST.logs.prod&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=postgREST.logs.prod&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_db:
type: 'http'
inputs:
@@ -830,7 +855,7 @@ services:
# We must route the sink through kong because ingesting logs before logflare is fully initialised will
# lead to broken queries from studio. This works by the assumption that containers are started in the
# following order: vector > db > logflare > kong
uri: 'http://supabase-kong:8000/analytics/v1/api/logs?source_name=postgres.logs&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-kong:8000/analytics/v1/api/logs?source_name=postgres.logs&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_functions:
type: 'http'
inputs:
@@ -840,7 +865,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=deno-relay-logs&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=deno-relay-logs&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_storage:
type: 'http'
inputs:
@@ -850,7 +875,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=storage.logs.prod.2&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=storage.logs.prod.2&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
logflare_kong:
type: 'http'
inputs:
@@ -861,7 +886,7 @@ services:
method: 'post'
request:
retry_max_duration_secs: 10
uri: 'http://supabase-analytics:4000/api/logs?source_name=cloudflare.logs.prod&api_key=${LOGFLARE_API_KEY}'
uri: 'http://supabase-analytics:4000/api/logs?source_name=cloudflare.logs.prod&api_key=${LOGFLARE_API_KEY?LOGFLARE_API_KEY is required}'
- /var/run/docker.sock:/var/run/docker.sock:ro
environment:
@@ -887,7 +912,7 @@ services:
- PGRST_APP_SETTINGS_JWT_EXP=${JWT_EXPIRY:-3600}
command: "postgrest"
supabase-auth:
image: supabase/gotrue:v2.145.0
image: supabase/gotrue:v2.149.0
depends_on:
supabase-db:
# Disable this if you are using an external Postgres database
@@ -902,7 +927,7 @@ services:
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:9999/health",
"http://127.0.0.1:9999/health",
]
timeout: 5s
interval: 5s
@@ -926,6 +951,7 @@ services:
- GOTRUE_JWT_SECRET=${SERVICE_PASSWORD_JWT}
- GOTRUE_EXTERNAL_EMAIL_ENABLED=${ENABLE_EMAIL_SIGNUP:-true}
- GOTRUE_EXTERNAL_ANONYMOUS_USERS_ENABLED=${ENABLE_ANONYMOUS_USERS:-false}
- GOTRUE_MAILER_AUTOCONFIRM=${ENABLE_EMAIL_AUTOCONFIRM:-false}
# GOTRUE_MAILER_SECURE_EMAIL_CHANGE_ENABLED=true
# GOTRUE_SMTP_MAX_FREQUENCY=1s
@@ -953,9 +979,20 @@ services:
- GOTRUE_EXTERNAL_PHONE_ENABLED=${ENABLE_PHONE_SIGNUP:-true}
- GOTRUE_SMS_AUTOCONFIRM=${ENABLE_PHONE_AUTOCONFIRM:-true}
# Uncomment to enable custom access token hook. You'll need to create a public.custom_access_token_hook function and grant necessary permissions.
# See: https://supabase.com/docs/guides/auth/auth-hooks#hook-custom-access-token for details
# GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_ENABLED="true"
# GOTRUE_HOOK_CUSTOM_ACCESS_TOKEN_URI="pg-functions://postgres/public/custom_access_token_hook"
# GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_ENABLED="true"
# GOTRUE_HOOK_MFA_VERIFICATION_ATTEMPT_URI="pg-functions://postgres/public/mfa_verification_attempt"
# GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_ENABLED="true"
# GOTRUE_HOOK_PASSWORD_VERIFICATION_ATTEMPT_URI="pg-functions://postgres/public/password_verification_attempt"
realtime-dev:
# This container name looks inconsistent but is correct because realtime constructs tenant id by parsing the subdomain
image: supabase/realtime:v2.28.23
image: supabase/realtime:v2.28.32
container_name: realtime-dev.supabase-realtime
depends_on:
supabase-db:
@@ -964,7 +1001,7 @@ services:
supabase-analytics:
condition: service_healthy
healthcheck:
test: ["CMD", "bash", "-c", "printf \\0 > /dev/tcp/localhost/4000"]
test: ["CMD", "bash", "-c", "printf \\0 > /dev/tcp/127.0.0.1/4000"]
timeout: 5s
interval: 5s
retries: 3
@@ -1038,7 +1075,7 @@ services:
"--no-verbose",
"--tries=1",
"--spider",
"http://localhost:5000/status",
"http://127.0.0.1:5000/status",
]
timeout: 5s
interval: 5s
@@ -1121,7 +1158,7 @@ services:
- PG_META_DB_PASSWORD=${SERVICE_PASSWORD_POSTGRES}
supabase-edge-functions:
image: supabase/edge-runtime:v1.43.2
image: supabase/edge-runtime:v1.45.2
depends_on:
supabase-analytics:
condition: service_healthy

View File

@@ -20,7 +20,7 @@ services:
volumes:
- tolgee-data:/data
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://localhost:8080"]
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:8080"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -0,0 +1,71 @@
# documentation: https://docs.twenty.com
# slogan: Twenty is a CRM designed to fit your unique business needs.
# tags: crm, self-hosted, dashboard
# logo: svgs/twenty.svg
# port: 3000
services:
twenty:
image: 'twentycrm/twenty:latest'
environment:
- SERVICE_FQDN_TRIGGER_3000
- SERVER_URL=$SERVICE_FQDN_TWENTY
- FRONT_BASE_URL=$SERVICE_FQDN_TWENTY
- ENABLE_DB_MIGRATIONS=true
- SIGN_IN_PREFILLED=false
- STORAGE_TYPE=${STORAGE_TYPE:-local}
- STORAGE_S3_REGION=$STORAGE_S3_REGION
- STORAGE_S3_NAME=$STORAGE_S3_NAME
- STORAGE_S3_ENDPOINT=$STORAGE_S3_ENDPOINT
- ACCESS_TOKEN_SECRET=$SERVICE_BASE64_32_ACCESS
- LOGIN_TOKEN_SECRET=$SERVICE_BASE64_32_LOGIN
- REFRESH_TOKEN_SECRET=$SERVICE_BASE64_32_REFRESH
- FILE_TOKEN_SECRET=$SERVICE_BASE64_32_FILE
- POSTGRES_ADMIN_PASSWORD=$SERVICE_PASSWORD_POSTGRES
- PG_DATABASE_URL=postgres://postgres:$SERVICE_PASSWORD_POSTGRES@postgres:5432/default
- EMAIL_FROM_ADDRESS=$EMAIL_FROM_ADDRESS
- EMAIL_FROM_NAME=$EMAIL_FROM_NAME
- EMAIL_SYSTEM_ADDRESS=$EMAIL_SYSTEM_ADDRESS
- EMAIL_DRIVER=${EMAIL_DRIVER:-logger}
- EMAIL_SMTP_HOST=$EMAIL_SMTP_HOST
- EMAIL_SMTP_PORT=$EMAIL_SMTP_PORT
- EMAIL_SMTP_USER=$EMAIL_SMTP_USER
- EMAIL_SMTP_PASSWORD=$EMAIL_SMTP_PASSWORD
- TELEMETRY_ENABLED=${TELEMETRY_ENABLED:-false}
- CACHE_STORAGE_TYPE=${CACHE_STORAGE_TYPE:-redis}
- REDIS_HOST=redis
- REDIS_PORT=6379
depends_on:
postgres:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/healthz"]
interval: 2s
timeout: 10s
retries: 15
postgres:
image: "twentycrm/twenty-postgres:latest"
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES
- POSTGRES_DB=default
volumes:
- pg-data:/bitnami/postgresql
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 20s
retries: 10
redis:
image: "redis:latest"
volumes:
- "redis-data:/data"
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -16,7 +16,7 @@ services:
postgresql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/heartbeat"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:3000/api/heartbeat"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -23,7 +23,7 @@ services:
- node
- index.js
healthcheck:
test: "wget --no-verbose --tries=1 --spider http://localhost:4242/health || exit 1"
test: "wget --no-verbose --tries=1 --spider http://127.0.0.1:4242/health || exit 1"
interval: 1s
timeout: 1m
retries: 5

View File

@@ -20,7 +20,7 @@ services:
- node
- index.js
healthcheck:
test: 'wget --no-verbose --tries=1 --spider http://localhost:4242/health || exit 1'
test: 'wget --no-verbose --tries=1 --spider http://127.0.0.1:4242/health || exit 1'
interval: 1s
timeout: 1m
retries: 5

View File

@@ -23,7 +23,7 @@ services:
volumes:
- vaultwarden-data:/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:80"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -0,0 +1,21 @@
# documentation: https://vikunja.io
# slogan: The open-source, self-hostable to-do app. Organize everything, on all platforms.
# tags: productivity,todo
# logo: svgs/vikunja.svg
# port: 3456
services:
vikunja:
image: vikunja/vikunja
environment:
- SERVICE_FQDN_VIKUNJA
- VIKUNJA_SERVICE_PUBLICURL=$SERVICE_FQDN_VIKUNJA
- VIKUNJA_SERVICE_JWTSECRET=$SERVICE_PASSWORD_JWTSECRET
- VIKUNJA_SERVICE_ENABLEREGISTRATION=true
volumes:
- vikunja-data:/app/vikunja/
healthcheck:
test: ["CMD", "wget", "--spider", "http://127.0.0.1:3456"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -26,7 +26,7 @@ services:
- weblate-data:/app/data
- weblate-cache:/app/cache
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8080"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:8080"]
interval: 2s
timeout: 10s
retries: 30

View File

@@ -9,7 +9,7 @@ services:
environment:
- SERVICE_FQDN_WHOOGLE_5000
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:5000"]
test: ["CMD", "curl", "-f", "http://127.0.0.1:5000"]
interval: 2s
timeout: 10s
retries: 15

View File

@@ -17,7 +17,7 @@ services:
depends_on:
- mariadb
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10

View File

@@ -17,7 +17,7 @@ services:
depends_on:
- mysql
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10
@@ -31,7 +31,7 @@ services:
- MYSQL_USER=$SERVICE_USER_WORDPRESS
- MYSQL_PASSWORD=$SERVICE_PASSWORD_WORDPRESS
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1"]
interval: 5s
timeout: 20s
retries: 10

View File

@@ -11,7 +11,7 @@ services:
environment:
- SERVICE_FQDN_WORDPRESS
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost"]
test: ["CMD", "curl", "-f", "http://127.0.0.1"]
interval: 2s
timeout: 10s
retries: 10