Home

Awesome

Scaling Appwrite

⚡ Introduction

In this repo, you'll find all the necessary files needed for deploying Appwrite:

Deployment types

TechniqueDescription
VerticalScale your Appwrite up and down using single server
HorizontalScale your Appwrite left and right using multiple services servers
SwarmScale your Appwrite using multiple docker swarm servers.

Addon

NameDescription
DecentralizedSingle decentralized storage and databases server to be used with Horizontal and Swarm

🎩 Using ansible

Any deployments contain fully working Ansible scripts, so you can deploy your Appwrite infrastructure with a single command!

Config files:

Inside each Ansible sub folder, you'll find two files inside the config folder

All you need to do is to update the variables inside the vars.yml file, and set each server IP. Notice that in Horizontal and Swarm the separation of the servers into groups is done for you.

Encrypt variables

To encrypt the database passwords, or any variables inside the vars.yml file, you can use ansible-vault like so:

ansible-vault encrypt_string PASSWORD --ask-vault-pass

Replace PASSWORD with the desired value and set a password for the local vault.

Run

Inside the ansible folder:

# In case you did encrypt some vars
ansible-playbook appwrite.yml --ask-vault-pass

# In case you didn't encrypt any vars
ansible-playbook appwrite.yml

Grab a coffee ☕ and watch your infrastructure come to life.

🧙‍♂️ Looking for more?

Check my official DevOps Book in English or in Hebrew.