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

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: admin@appwrite.io
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.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!