How to Install Appwrite on Arch Linux

Appwrite is a backend server for building web and mobile applications that provides easy-to-use and powerful tools that simplify the development process. In this tutorial, we will show you how to install Appwrite on Arch Linux.

Prerequisites

  • Arch Linux
  • sudo privileges

Step 1: Update System

Before installing any new software packages, it is important to ensure that the system is up to date. Run the following command to update the system:

sudo pacman -Syu

Step 2: Install Dependencies

Appwrite requires several dependencies that are not installed by default on Arch Linux. Run the following command to install these dependencies:

sudo pacman -S curl git unzip nginx certbot python python-pip php php-sqlite npm

Step 3: Install Docker

Appwrite runs inside Docker containers. Therefore, we need to install Docker on our system. Run the following command to install Docker:

sudo pacman -S docker

Once the installation is complete, start the Docker service:

sudo systemctl start docker

Step 4: Install Appwrite

The easiest way to install Appwrite is to use the provided installation script. Run the following command to download and execute the installation script:

curl -sSL https://raw.githubusercontent.com/appwrite/appwrite/master/docker-compose.yml > docker-compose.yml
sudo docker-compose up -d

This command will download the latest Appwrite docker-compose file and start Appwrite services in detached mode.

Step 5: Configure Nginx

By default, Appwrite runs on port 80 inside a Docker container. To make Appwrite accessible from the internet, we need to configure Nginx as a reverse proxy. Run the following command to create a new Nginx configuration file:

sudo vim /etc/nginx/conf.d/appwrite.conf

Add the following configuration to the file:

server {
    listen 80;
    server_name example.com; # Change this to your domain name

    location / {
        proxy_pass http://localhost:80;
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}

Save and exit the file. Then, reload Nginx for the changes to take effect:

sudo systemctl reload nginx

Step 6: Enable HTTPS

To secure your Appwrite installation, it is recommended to enable HTTPS. Run the following command to obtain a Let's Encrypt SSL certificate:

sudo certbot --nginx -d example.com # Replace example.com with your domain name

Follow the on-screen instructions to configure the SSL certificate.

Step 7: Access Appwrite

You can now access the Appwrite dashboard by visiting https://example.com in your web browser. The default login credentials are:

Email: [email protected]
Password: password

Conclusion

Congratulations! You have successfully installed Appwrite on Arch Linux. You can now start building your web and mobile applications using Appwrite's powerful backend features.