Aufsetzen eines Wahlrechner-Servers für Wahlkompass Dresden
Dieses Repository dient als Hifestellung, um eine Wahlrechner-Instanz für DresdenZero, Zukunftsgestalten, Lokale Agenda Dresden und BUND Dresden auf (m)einem Server aufzusetzen.
Die folgende Anleitung funktioniert nur auf Debian-basierten Systemen, und wurde ausschließlich mit Debian 11 (Bullseye)
getestet.
Sie ist außerdem etwas auf die Umgebung des Servers von DresdenZero zugeschnitten und enthält deshalb nicht alle Schritte der Originalanleitung.
mkdir wahl/
git clone --recurse-submodules https://github.com/sebastian-meyer/wahlrechner-docker wahl/
cd wahl
Bevor du den Wahlrechner-Server das erste Mal startest, musst du die Konfigurationsdatei config.env
erstellen. Eine Vorlage ist unter config/config.env.example
zu finden.
cp config/config.env.example config/config.env
DJANGO_SECRET_KEY: Ersetze ChangeThisToRandomStringInProduction
durch eine zufällig generierte (mind. 30 Zeichen lang, bestehend aus Zahlen, Buchstaben und Sonderzeichen) Zeichenkette. Teile den Secret Key niemals mit jemand anderem!
DJANGO_DEFAULT_ADMIN_PASSWORD: Beim erstmaligen Starten des Wahlrechners wird automatisch ein Admin-Account erstellt. Ersetze adminpassword
durch ein erstes, sicheres Passwort. Nach der erstmaligen Anmeldung in der Admin-Oberfläche solltest du dein Passwort zusätzlich nochmal ändern.
MYSQL_PASSWORD: Ersetze SetDatabaseUserPassword
durch ein zufällig generiertes Passwort. Du wirst es niemals von Hand eingeben müssen - also lass dir bitte ein sicheres Passwort mit einem Passwortgenerator generieren.
sudo certbot certonly --webroot -w /var/www/http/common/letsencryptauth -d wahlkompass-dresden.de
Erstelle anschließend einen Symlink, damit die Zertifikate automatisch aktualisiert werden können.
ln -s /etc/letsencrypt/live/wahlkompass-dresden.de/* web/cert/
Du kannst den Server mit Docker starten:
sudo docker compose up -d
Du kannst den Server mit Docker wieder stoppen:
sudo docker compose down
Um die Wahlrechner-Instanz auf die neuste Version zu aktualisieren, lade diese von GitHub:
sudo docker compose down
git pull
sudo docker compose up -d