Update docker-compose.coolify.yml
This commit is contained in:
parent
46fbb6485a
commit
12ba1530e4
1 changed files with 117 additions and 0 deletions
|
|
@ -0,0 +1,117 @@
|
|||
name: cap
|
||||
|
||||
services:
|
||||
cap-web:
|
||||
image: 'ghcr.io/capsoftware/cap-web:latest'
|
||||
restart: unless-stopped
|
||||
depends_on:
|
||||
mysql:
|
||||
condition: service_healthy
|
||||
minio:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
SERVICE_URL_CAP_WEB_3000: ''
|
||||
DATABASE_URL: 'mysql://cap:${SERVICE_PASSWORD_MYSQL}@mysql:3306/cap'
|
||||
WEB_URL: '${SERVICE_URL_CAP_WEB}'
|
||||
NEXTAUTH_URL: '${SERVICE_URL_CAP_WEB}'
|
||||
DATABASE_ENCRYPTION_KEY: '${SERVICE_HEX_32_DATABASEENCRYPTIONKEY}'
|
||||
NEXTAUTH_SECRET: '${SERVICE_HEX_32_NEXTAUTHSECRET}'
|
||||
CAP_AWS_ACCESS_KEY: capadmin
|
||||
CAP_AWS_SECRET_KEY: '${SERVICE_PASSWORD_MINIO}'
|
||||
CAP_AWS_BUCKET: cap
|
||||
CAP_AWS_REGION: us-east-1
|
||||
S3_PUBLIC_ENDPOINT: '${SERVICE_URL_MINIO}'
|
||||
S3_INTERNAL_ENDPOINT: 'http://minio:9000'
|
||||
S3_PATH_STYLE: 'true'
|
||||
RESEND_API_KEY: '${RESEND_API_KEY:-}'
|
||||
RESEND_FROM_DOMAIN: '${RESEND_FROM_DOMAIN:-}'
|
||||
GOOGLE_CLIENT_ID: '${GOOGLE_CLIENT_ID:-}'
|
||||
GOOGLE_CLIENT_SECRET: '${GOOGLE_CLIENT_SECRET:-}'
|
||||
APPLE_CLIENT_ID: '${APPLE_CLIENT_ID:-}'
|
||||
APPLE_CLIENT_SECRET: '${APPLE_CLIENT_SECRET:-}'
|
||||
MEDIA_SERVER_URL: 'http://media-server:3456'
|
||||
MEDIA_SERVER_WEBHOOK_SECRET: '${SERVICE_HEX_32_MEDIASERVER}'
|
||||
MEDIA_SERVER_WEBHOOK_URL: 'http://cap-web:3000'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- wget
|
||||
- '-q'
|
||||
- '-O'
|
||||
- /dev/null
|
||||
- 'http://127.0.0.1:3000/'
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 60s
|
||||
|
||||
media-server:
|
||||
image: 'ghcr.io/capsoftware/cap-media-server:latest'
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
PORT: 3456
|
||||
MEDIA_SERVER_WEBHOOK_SECRET: '${SERVICE_HEX_32_MEDIASERVER}'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- bun
|
||||
- '-e'
|
||||
- "fetch('http://127.0.0.1:3456/health').then((response) => process.exit(response.ok ? 0 : 1)).catch(() => process.exit(1))"
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
mysql:
|
||||
image: 'mysql:8.0'
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MYSQL_DATABASE: cap
|
||||
MYSQL_USER: cap
|
||||
MYSQL_PASSWORD: '${SERVICE_PASSWORD_MYSQL}'
|
||||
MYSQL_ROOT_PASSWORD: '${SERVICE_PASSWORD_64_MYSQL}'
|
||||
command:
|
||||
- '--max_connections=1000'
|
||||
- '--character-set-server=utf8mb4'
|
||||
- '--collation-server=utf8mb4_unicode_ci'
|
||||
volumes:
|
||||
- 'cap-mysql-data:/var/lib/mysql'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- mysqladmin
|
||||
- ping
|
||||
- '-h'
|
||||
- localhost
|
||||
- '-u'
|
||||
- cap
|
||||
- '-p${SERVICE_PASSWORD_MYSQL}'
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 10
|
||||
start_period: 30s
|
||||
|
||||
minio:
|
||||
image: 'minio/minio:latest'
|
||||
restart: unless-stopped
|
||||
command: 'server /data --console-address ":9001"'
|
||||
environment:
|
||||
MINIO_ROOT_USER: capadmin
|
||||
MINIO_ROOT_PASSWORD: '${SERVICE_PASSWORD_MINIO}'
|
||||
SERVICE_URL_MINIO_9000: ''
|
||||
volumes:
|
||||
- 'cap-minio-data:/data'
|
||||
healthcheck:
|
||||
test:
|
||||
- CMD
|
||||
- mc
|
||||
- ready
|
||||
- local
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 10s
|
||||
|
||||
volumes:
|
||||
cap-mysql-data: null
|
||||
cap-minio-data: null
|
||||
Loading…
Reference in a new issue