⚡ The AppFlowy Cloud written with Rust 🦀
- get vps + domain with ssl + get second ssl to plug into vps + openai api key + mailgun acc (domain dns config -> vps and mailgun)
- created user with sudo powed - logged in with user
- git cloned /AppFlowy-Cloud
- installed nginx, docker engine (/etc/nginx/sites-enabled/default deleted)
- edited deploy.env, docker-compose.yml and /migrations/before/20230312043000_supabase_auth.sql (changed passes, smtp mailgun, google oauth, auto-confirm off, openai api, disabled built-in nginx and unused admin servs such as portainer)
- configured /etc/nginx/nginx.conf with xternal-nginx.conf
- cd /AppFlowy-Cloud / cp deploy.env .env / docker compose up -d
- created /home/user/appflowy_backups folder
- created backup scripts for postgres and minio in /script/
- modified docker-compose.yml to include the volume and add the backup service
- smtp won't send any mails
- currently working on deploying an element synapse on the same vps/domain/nginx.conf
- security - priority
- have a small ai model to do simple tasks based on lists/notes (eg. combine all the ingredients from @recipe1 @recipe2 and @recipe3 into a single shopping list) - either on-clients-device or something like ollama hosted on another server
- syncing between user seems a liiiiiiiitle clunky sometimes. can we improve?
- is it worth to create an outside postgres db? //after a little documentation on my own, i don't think so. very likely to be wrong
AppFlowy Cloud is part of the AppFlowy ecosystem, offering secure user authentication, file storage, and real-time WebSocket communication for an efficient and collaborative user experience.
- See deployment guide
You'll need to install:
- copy the configurations from
dev.env
to.env
- edit the
.env
as required (such as SMTP configurations)
./script/run_local_server.sh
This process will execute all the dependencies and start the AppFlowy-Cloud server. Alternatively, you have the option to run the AppFlowy-Cloud server independently
- Run the dependency servers
docker compose --file docker-compose-dev.yml up -d
- Install sqlx-cli
cargo install sqlx-cli
- Run sqlx migration
sqlx database create
sqlx migrate run
cargo sqlx prepare --workspace
- Run the server
cargo run
After the server is running, you can run the tests with:
cargo test
Effective debugging is essential for maintaining a healthy application. Here are some tools and commands to help you troubleshoot issues in various components of the AppFlowy cloud server:
A web-based administration tool for PostgreSQL. Access it at PgAdmin
- OR command line:
export PGPASSWORD=password
psql --host=localhost --username=postgres --port=5432
- Redis
Redis offers a powerful command line interface for managing your Redis instance. Connect using the following command:
redis-cli -p 6379
Minio provides a Web UI for easy management of your files and buckets. Access it at Web UI
For managing Docker containers, Portainer's Web UI is an excellent tool. Access it at Web UI to easily manage Docker environments, including container deployment, networking, volume management, and more. Access it at Web UI
Any new contribution is more than welcome in this project! If you want to know more about the development workflow or want to contribute, please visit our contributing guidelines for detailed instructions!