Merge pull request #3738 from riazosama/service-affine

feat: affine service template and logo
This commit is contained in:
🏔️ Peak
2024-10-09 23:07:41 +02:00
committed by GitHub
2 changed files with 159 additions and 0 deletions

View File

@@ -0,0 +1,71 @@
# documentation: https://docs.affine.pro/docs/self-host-affine
# slogan: AFFiNE is an open-source, all-in-one workspace and OS for knowledge management, a Notion/Miro alternative.
# tags: knowledge-management,notion,miro,workspace
# logo: svgs/affine.svg
services:
affine:
image: 'ghcr.io/toeverything/affine-graphql:stable'
command:
- sh
- '-c'
- 'node ./scripts/self-host-predeploy && node ./dist/index.js'
ports:
- ':3010'
- ':5555'
depends_on:
redis:
condition: service_healthy
postgres:
condition: service_healthy
volumes:
- '~/.affine/self-host/config:/root/.affine/config'
- '~/.affine/self-host/storage:/root/.affine/storage'
logging:
driver: json-file
options:
max-size: 1000m
environment:
- SERVICE_FQDN_AFFINE
- 'NODE_OPTIONS="--import=./scripts/register.js"'
- AFFINE_CONFIG_PATH=/root/.affine/config
- REDIS_SERVER_HOST=redis
- 'DATABASE_URL=postgres://${SERVICE_USER_POSTGRES}:${SERVICE_PASSWORD_POSTGRES}@postgres:5432/${POSTGRES_DB:-affine}'
- NODE_ENV=production
- AFFINE_SERVER_HOST=$SERVICE_FQDN_AFFINE
- AFFINE_SERVER_EXTERNAL_URL=$SERVICE_FQDN_AFFINE
- MAILER_HOST=$MAILER_HOST
- MAILER_PORT=$MAILER_PORT
- MAILER_USER=$MAILER_USER
- MAILER_PASSWORD=$MAILER_PASSWORD
- MAILER_SENDER=$MAILER_SENDER
redis:
image: redis
volumes:
- '~/.affine/self-host/redis:/data'
healthcheck:
test:
- CMD
- redis-cli
- '--raw'
- incr
- ping
interval: 10s
timeout: 5s
retries: 5
postgres:
image: postgres
volumes:
- '~/.affine/self-host/postgres:/var/lib/postgresql/data'
healthcheck:
test:
- CMD-SHELL
- 'pg_isready -U affine'
interval: 10s
timeout: 5s
retries: 5
environment:
- POSTGRES_USER=$SERVICE_USER_POSTGRES
- POSTGRES_PASSWORD=$SERVICE_PASSWORD_POSTGRES
- 'POSTGRES_DB=${POSTGRES_DB:-affine}'
- PGDATA=/var/lib/postgresql/data/pgdata