190 lines
7.8 KiB
Markdown
190 lines
7.8 KiB
Markdown
---
|
||||
|
|
page-title: "Installation - Docs - Appwrite"
|
|||
|
|
url: https://appwrite.io/docs/installation
|
|||
|
|
date: "2023-04-06 23:41:10"
|
|||
|
|
---
|
|||
|
|
## Table of contents
|
|||
|
|
|
|||
|
|
- [Home](https://appwrite.io/docs)
|
|||
|
|
|
|||
|
|
**Getting Started**
|
|||
|
|
|
|||
|
|
- [Installation](https://appwrite.io/docs/installation)
|
|||
|
|
- [Production](https://appwrite.io/docs/production)
|
|||
|
|
- [Env. Variables](https://appwrite.io/docs/environment-variables)
|
|||
|
|
- [Email Delivery](https://appwrite.io/docs/email-delivery)
|
|||
|
|
- [SMS Delivery](https://appwrite.io/docs/sms-delivery)
|
|||
|
|
- [Certificates](https://appwrite.io/docs/certificates)
|
|||
|
|
- [Debugging](https://appwrite.io/docs/debugging)
|
|||
|
|
- [Upgrade](https://appwrite.io/docs/upgrade)
|
|||
|
|
- [Appwrite for Web](https://appwrite.io/docs/getting-started-for-web)
|
|||
|
|
- [Appwrite for Flutter](https://appwrite.io/docs/getting-started-for-flutter)
|
|||
|
|
- [Appwrite for Apple](https://appwrite.io/docs/getting-started-for-apple)
|
|||
|
|
- [Appwrite for Android](https://appwrite.io/docs/getting-started-for-android)
|
|||
|
|
- [Appwrite for Server](https://appwrite.io/docs/getting-started-for-server)
|
|||
|
|
- [Appwrite CLI](https://appwrite.io/docs/command-line)
|
|||
|
|
- [Deployment](https://appwrite.io/docs/command-line-deployment)
|
|||
|
|
- [Commands](https://appwrite.io/docs/command-line-commands)
|
|||
|
|
- [CI Mode](https://appwrite.io/docs/command-line-ci)
|
|||
|
|
- [SDKs](https://appwrite.io/docs/sdks)
|
|||
|
|
|
|||
|
|
**APIs**
|
|||
|
|
|
|||
|
|
- [REST](https://appwrite.io/docs/rest)
|
|||
|
|
- [GraphQL](https://appwrite.io/docs/graphql)
|
|||
|
|
- [Realtime](https://appwrite.io/docs/realtime)
|
|||
|
|
|
|||
|
|
**References**
|
|||
|
|
|
|||
|
|
- [Account](https://appwrite.io/docs/client/account)
|
|||
|
|
- [Users](https://appwrite.io/docs/server/users)
|
|||
|
|
- [Teams](https://appwrite.io/docs/client/teams)
|
|||
|
|
- [Databases](https://appwrite.io/docs/client/databases)
|
|||
|
|
- [Storage](https://appwrite.io/docs/client/storage)
|
|||
|
|
- [Functions](https://appwrite.io/docs/client/functions)
|
|||
|
|
- [Localization](https://appwrite.io/docs/client/locale)
|
|||
|
|
- [Avatars](https://appwrite.io/docs/client/avatars)
|
|||
|
|
- [Health](https://appwrite.io/docs/server/health)
|
|||
|
|
|
|||
|
|
**Guides**
|
|||
|
|
|
|||
|
|
- [Databases](https://appwrite.io/docs/databases)
|
|||
|
|
- [Storage](https://appwrite.io/docs/storage)
|
|||
|
|
- [Authentication](https://appwrite.io/docs/authentication)
|
|||
|
|
- [Functions](https://appwrite.io/docs/functions)
|
|||
|
|
|
|||
|
|
**Advanced**
|
|||
|
|
|
|||
|
|
- [API Keys](https://appwrite.io/docs/keys)
|
|||
|
|
- [Permissions](https://appwrite.io/docs/permissions)
|
|||
|
|
- [Events](https://appwrite.io/docs/events)
|
|||
|
|
- [Pagination](https://appwrite.io/docs/pagination)
|
|||
|
|
- [Webhooks](https://appwrite.io/docs/webhooks)
|
|||
|
|
- [Custom Domains](https://appwrite.io/docs/custom-domains)
|
|||
|
|
- [Response Codes](https://appwrite.io/docs/response-codes)
|
|||
|
|
- [Rate Limits](https://appwrite.io/docs/rate-limits)
|
|||
|
|
|
|||
|
|
[Docs](https://appwrite.io/docs)
|
|||
|
|
|
|||
|
|
## Installation
|
|||
|
|
|
|||
|
|
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](https://www.docker.com/products/docker-desktop). You can use Appwrite on your local machine or a cloud provider of your choice.
|
|||
|
|
|
|||
|
|
## [System Requirements](https://appwrite.io/docs/installation#systemRequirements)
|
|||
|
|
|
|||
|
|
Appwrite is designed to run well on both small and large deployments. The minimum requirements to run Appwrite are as little as **1 CPU core** and **2GB of RAM**, and an operating system that supports Docker.
|
|||
|
|
|
|||
|
|
Appwrite requires [Docker Compose Version 2](https://docs.docker.com/compose/install/). To install Appwrite, make sure your Docker installation is updated to support Composer V2.
|
|||
|
|
|
|||
|
|
### Upgrading From Older Versions
|
|||
|
|
|
|||
|
|
If you are migrating from an older version of Appwrite, you need to follow the [migration instructions](https://appwrite.io/docs/upgrade).
|
|||
|
|
|
|||
|
|
## [Install with Docker](https://appwrite.io/docs/installation#installWithDocker)
|
|||
|
|
|
|||
|
|
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](https://www.docker.com/products/docker-desktop) installed on your host machine.
|
|||
|
|
|
|||
|
|
You will be prompted to configure the following during the setup command:
|
|||
|
|
|
|||
|
|
1. Your Appwrite instance's HTTP and HTTPs ports.
|
|||
|
|
2. Your Appwrite instance's secret key which used to encrypt sensitive data.
|
|||
|
|
3. Your Appwrite instance's main hostname. Appwrite will generate a certificate using this hostname.
|
|||
|
|
4. Your Appwrite instance's DNS A record hostname. Typically set to the same value as your Appwrite instance's hostname.
|
|||
|
|
|
|||
|
|
### [Unix](https://appwrite.io/docs/installation#unix)
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker run -it --rm \
|
|||
|
|
--volume /var/run/docker.sock:/var/run/docker.sock \
|
|||
|
|
--volume "$(pwd)"/appwrite:/usr/src/code/appwrite:rw \
|
|||
|
|
--entrypoint="install" \
|
|||
|
|
appwrite/appwrite:1.2.1
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
### [Windows](https://appwrite.io/docs/installation#windows)
|
|||
|
|
|
|||
|
|
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 Desktop](https://docs.docker.com/desktop/windows/install/) which uses Virtualbox to run Appwrite on a Virtual Machine.
|
|||
|
|
|
|||
|
|
- CMD
|
|||
|
|
- PowerShell
|
|||
|
|
|
|||
|
|
- #### CMD
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker run -it --rm ^
|
|||
|
|
--volume //var/run/docker.sock:/var/run/docker.sock ^
|
|||
|
|
--volume "%cd%"/appwrite:/usr/src/code/appwrite:rw ^
|
|||
|
|
--entrypoint="install" ^
|
|||
|
|
appwrite/appwrite:1.2.1
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
- #### PowerShell
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker run -it --rm `
|
|||
|
|
--volume /var/run/docker.sock:/var/run/docker.sock `
|
|||
|
|
--volume ${pwd}/appwrite:/usr/src/code/appwrite:rw `
|
|||
|
|
--entrypoint="install" `
|
|||
|
|
appwrite/appwrite:1.2.1
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
|
|||
|
|
## [One-Click Setups](https://appwrite.io/docs/installation#one-click-setups)
|
|||
|
|
|
|||
|
|
In addition to running Appwrite locally, you can also launch Appwrite using a pre-configured setup. This allows you to get up and running with Appwrite quickly without installing Docker on your local machine.
|
|||
|
|
|
|||
|
|
Choose from one of the providers below:
|
|||
|
|
|
|||
|
|
Provider
|
|||
|
|
|
|||
|
|
 
|
|||
|
|
|
|||
|
|
DigitalOcean
|
|||
|
|
|
|||
|
|
[Click to Install](https://marketplace.digitalocean.com/apps/appwrite)
|
|||
|
|
|
|||
|
|
 
|
|||
|
|
|
|||
|
|
Gitpod
|
|||
|
|
|
|||
|
|
[Click to Install](https://gitpod.io/#https://github.com/appwrite/integration-for-gitpod)
|
|||
|
|
|
|||
|
|
### [Manual (using docker-compose.yml)](https://appwrite.io/docs/installation#manual)
|
|||
|
|
|
|||
|
|
For advanced Docker users, the manual installation might seem more familiar. To set up Appwrite manually, download the Appwrite base [docker-compose.yml](https://appwrite.io/install/compose) and [.env](https://appwrite.io/install/env) files, then move them inside a directory named `appwrite`. After the download completes, update the different environment variables as you wish in the `.env` file and start the Appwrite stack using the following Docker command:
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker compose up -d --remove-orphans
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
Once the Docker installation completes, go to your machine's hostname or IP address on your browser to access the Appwrite console. Please note that on hosts that are not Linux-native, the server might take a few minutes to start after installation completes.
|
|||
|
|
|
|||
|
|
### [Stop](https://appwrite.io/docs/installation#stop)
|
|||
|
|
|
|||
|
|
You can stop your Appwrite containers by using the following command executed from the same directory as your `docker-compose.yml` file.
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker compose stop
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
### [Uninstall](https://appwrite.io/docs/installation#uninstall)
|
|||
|
|
|
|||
|
|
To stop and remove your Appwrite containers, you can use the following command executed from the same directory as your `docker-compose.yml` file.
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
docker compose down -v
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
*Click Here to Copy*
|
|||
|
|
|
|||
|
|
## [Learn More](https://appwrite.io/docs/installation#learnMore)
|