# Self-Hosted AppFlowy Cloud Setup Guide This guide will help you set up your own instance of AppFlowy Cloud. ## Prerequisites - Docker and Docker Compose - PostgreSQL 14 or higher - Redis - Minimum 2GB RAM - Git ## Quick Start 1. Clone the Appflowy-Cloud repository: ```bash git clone https://github.com/AppFlowy-IO/AppFlowy-Cloud.git cd AppFlowy-Cloud ``` 2. Configure environment variables: ```bash cp deploy.env .env ``` Edit the following variables in the `.env` file to reflect your setup: ```env # PostgreSQL Settings POSTGRES_PASSWORD= # Supabase user settings SUPABASE_PASSWORD= # authentication key, change this and keep the key safe and secret # self defined key, you can use any string GOTRUE_JWT_SECRET= # If you want to use AWS SES, set the following variables: GOTRUE_MAILER_AUTOCONFIRM=false GOTRUE_SMTP_HOST=email-smtp.us-east-1.amazonaws.com GOTRUE_SMTP_PORT=465 GOTRUE_SMTP_USER= GOTRUE_SMTP_PASSWORD= GOTRUE_SMTP_ADMIN_EMAIL= # This user will be created when AppFlowy Cloud starts successfully # You can use this user to login to the admin panel GOTRUE_ADMIN_EMAIL= GOTRUE_ADMIN_PASSWORD= # Change this to your own domain where you host the docker-compose or gotrue API_EXTERNAL_URL= # File Storage # This is where storage like images, files, etc. will be stored. # By default, Minio is used as the default file storage which uses host's file system. APPFLOWY_S3_SECRET_KEY= # AppFlowy Cloud Mailer Configuration (same credentials as GOTRUE_SMTP_*) APPFLOWY_MAILER_SMTP_HOST=email-smtp.us-east-1.amazonaws.com APPFLOWY_MAILER_SMTP_PORT=465 APPFLOWY_MAILER_SMTP_USERNAME= APPFLOWY_MAILER_SMTP_PASSWORD= # PgAdmin # Optional module to manage the postgres database # You can access the pgadmin at http://your-host/pgadmin # Refer to the APPFLOWY_DATABASE_URL for password when connecting to the database PGADMIN_DEFAULT_EMAIL= PGADMIN_DEFAULT_PASSWORD= # Portainer (username: admin) PORTAINER_PASSWORD= # AppFlowy AI (Optional) APPFLOWY_AI_OPENAI_API_KEY= # AppFlowy Web (change localhost to your host address) APPFLOWY_WEB_URL=http://localhost:3000 ``` 3. Start the services: ```bash docker-compose up -d ``` 4. Confirm that your services are running: ```bash docker ps -a ```