Supabase

Aus ahrensburg.city
Zur Navigation springen Zur Suche springen

Supabase ist eine Open-Source-Plattform, die eine Vielzahl von Diensten für die Entwicklung von Anwendungen bereitstellt. Es bietet eine Datenbank, Authentifizierung, Echtzeit- und REST-APIs, Dateispeicherung und mehr. Supabase basiert auf PostgreSQL und bietet eine einfache Möglichkeit, Datenbanken zu erstellen und zu verwalten.

Ubuntu 24.04 LTS Installation

Um Supabase auf einem Ubuntu 24.04 LTS-Server zu installieren, führen Sie die folgenden Schritte aus:

Installieren Sie ufw

ufw ist ein Frontend für iptables und bietet eine einfache Möglichkeit, die Firewall auf einem Ubuntu-Server zu konfigurieren. Installieren Sie ufw mit dem folgenden Befehl:

sudo apt update # Aktualisieren Sie die Paketliste
sudo apt install ufw # Installieren Sie ufw

Standardregeln setzen:

sudo ufw default deny incoming # Blockieren Sie eingehende Verbindungen
sudo ufw default allow outgoing # Erlauben Sie ausgehende Verbindungen
sudo ufw allow ssh # Erlauben Sie SSH-Verbindungen
sudo ufw allow http # Erlauben Sie HTTP-Verbindungen
sudo ufw allow https # Erlauben Sie HTTPS-Verbindungen
sudo ufw allow 8001 # Erlauben Sie HTTPS-Verbindungen

Aktivieren Sie ufw:

sudo ufw enable # Aktivieren Sie ufw

Installieren Sie Docker

Ändern der Docker-Daemon-Konfiguration

Deaktivieren von iptables:

sudo nano /etc/docker/daemon.json # Öffnen Sie die Docker-Daemon-Konfigurationsdatei

Fügen Sie die folgende Konfiguration hinzu:

{
  "iptables": false # Deaktivieren Sie iptables
}

Starten Sie den Docker-Dienst neu:

sudo systemctl restart docker # Starten Sie den Docker-Dienst neu

Installieren Sie Supabase

Wert eingebem

Erstellen Sie ein sicheres Passwort für den Supabase-Administrator:

sudo nano /root/supabase/docker/.env # Öffnen Sie die .env-Datei

Installieren Sie nginx

sudo apt install nginx # Installieren Sie nginx
sudo ufw allow 'Nginx Full' # Erlauben Sie Nginx-Verbindungen
sudo systemctl enable nginx # Aktivieren Sie den Nginx-Dienst
sudo systemctl start nginx # Starten Sie den Nginx-Dienst

Certbot SSL-Zertifikat

sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
sudo systemctl stop nginx
sudo certbot certonly --standalone -d karte.ahrensburg.city
sudo systemctl start nginx

Konfigurieren Sie nginx

Erstellen Sie eine neue Konfigurationsdatei für Supabase:

sudo nano /etc/nginx/sites-available/supabase # Öffnen Sie eine neue Konfigurationsdatei

Fügen Sie die folgende Konfiguration hinzu:

server {
    listen 8001 ssl http2;
    listen [::]:8001 ssl http2;
    server_name ahrensburg.city;
    ssl_certificate /etc/letsencrypt/live/ahrensburg.city/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/ahrensburg.city/privkey.pem;

    location / {
        proxy_pass http://localhost:8000; # Weiterleitung an Supabase
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Aktivieren Sie die Konfiguration:

sudo ln -s /etc/nginx/sites-available/supabase /etc/nginx/sites-enabled/ # Verknüpfen Sie die Konfigurationsdatei
sudo nginx -t # Testen Sie die Konfiguration
sudo systemctl restart nginx # Starten Sie den Nginx-Dienst neu

Zugriff auf Supabase

Öffnen Sie einen Webbrowser und navigieren Sie zu Ihrer Domain (z. B. https://karte.ahrensburg.city), um auf Supabase zuzugreifen. Sie können sich mit den Standardanmeldeinformationen anmelden und mit der Entwicklung Ihrer Anwendung beginnen.