services: postgres: image: pgvector/pgvector:pg17 container_name: affine_db environment: POSTGRES_USER: ${POSTGRES_USER} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} POSTGRES_DB: ${POSTGRES_DB} volumes: - affine_db_data:/var/lib/postgresql/data restart: unless-stopped redis: image: redis:latest container_name: affine_redis volumes: - affine_redis_data:/data restart: unless-stopped affine: image: ghcr.io/toeverything/affine:canary container_name: affine_app depends_on: - postgres - redis ports: - "${AFFINE_PORT}:3010" volumes: - affine_config:/root/.affine/config - affine_storage:/root/.affine/storage environment: AFFINE_REVISION: ${AFFINE_REVISION} AFFINE_INDEXER_ENABLED: ${AFFINE_INDEXER_ENABLED} PORT: 3010 AFFINE_SERVER_HTTPS: ${AFFINE_SERVER_HTTPS} AFFINE_SERVER_EXTERNAL_URL: ${AFFINE_EXTERNAL_URL} MAILER_HOST: ${MAILER_HOST} MAILER_PORT: ${MAILER_PORT} MAILER_USER: ${MAILER_USER} MAILER_PASSWORD: ${MAILER_PASSWORD} MAILER_SENDER: ${MAILER_SENDER} REDIS_SERVER_HOST: redis DATABASE_URL: ${DATABASE_URL} NODE_ENV: production # AFFINE_ADMIN_EMAIL: ${AFFINE_ADMIN_EMAIL} # AFFINE_ADMIN_PASSWORD: ${AFFINE_ADMIN_PASSWORD} restart: unless-stopped volumes: affine_db_data: affine_redis_data: affine_config: affine_storage: