Appwrite is a self-hosted backend server packaged as a set of Docker containers. You can install and run Appwrite on any operating system that can run a Docker CLI. You can use Appwrite on your local machine or cloud provider of your choice.
Appwrite was designed to run well on both small and large deployment. The minimum requirements to run Appwrite is as little as 1 CPU core and 2GB of RAM, and an operating system that supports Docker.
Install with Docker
The easiest way to start running your Appwrite server is by running our Docker installer tool from your terminal. Before running the installation command, make sure you have Docker CLI installed on your host machine.
Hyper-V and Containers Windows features must be enabled to run Appwrite on Windows with Docker. If you don't have these features available, you can install Docker Toolbox that uses Virtualbox to run Appwrite on a Virtual Machine.
Once the Docker installation completes, go to your machine hostname or IP address on your browser to access the Appwrite console. Please notice that on non-linux native hosts the server might take a few minutes to start after installation completes.
Upgrade From an Older Version
If you are upgrading your Appwrite server from an older version, you should use the Appwrite migration tool once your setup is completed. Make sure to run this tool after you already finished setting up the new version, as mentioned above.
When setting up a new Appwrite version, make sure to run your new setup from the same location you executed your original setup. This will allow the installation script to update your existing docker-compose.yml file. The correct location for execution is the parent directory of your existing appwrite directory.
The data migration tool will allow you to easily migrate your current Appwrite data to work with your new setup. It is highly recommended to backup your server data before running the migration.
To start the migration, run the following command from your terminal once your backup is ready and that your new Appwrite setup has completed successfully. Replace "[APPWRITE_CONTAINER_ID]" with your container ID. You can find your container ID by running `docker ps` command.