mirror of
https://github.com/netzbegruenung/green-spider.git
synced 2024-05-04 10:03:40 +02:00
1.8 KiB
1.8 KiB
DevOps
Die Skripte in diesem Verzeichnis erlauben das weitgehend automatisierte Provisionieren eines Servers, Ausführen von Jobs wie Spider und Screenshotter und Entfernen des Servers.
Warnung: Die Scripte sind aktuell so einfach, dass die erzeugten Server nur nach erfolgreicher Ausführung des Jobs entfernt werden. Im Fall eines Fehlers muss der provisionierte Server unbedingt manuell entfernt werden, um unnötige Kosten zu vermeiden.
Voraussetzungen
- SSH Public Key ist bei Hetzner hinterlegt und in den scripten eingetragen (siehe 'ssh_keys')
- API Token für Hetzner in Datei 'secrets/hetzner-api-token.sh' im Format 'export API_TOKEN='
- Service account JSON Datei mit Schreibrechten in 'secrets/datastore-writer.json'
- curl
- jq (https://stedolan.github.io/jq/)
- ssh
Generelles
- Die Skripte müssen aus dem root-Verzeichnis des git repositories ausgeführt werden
- Der Terminal muss bis zum Ende der Ausführung geöffnet bleiben.
Spider starten
devops/run-job.sh spider
Screenshots erstellen
devops/run-job.sh screenshotter
Webapp deployen
devops/deploy-webapp.sh
Einloggen per SSH
devops/ssh.sh
LetsEncrypt Zertifikat erneuern
Hostname: green-spider.netzbegruenung.de
docker-compose stop webapp
docker run -it --rm -p 443:443 -p 80:80 --name certbot \
-v /etc/letsencrypt:/etc/letsencrypt \
-v /var/lib/letsencrypt:/var/lib/letsencrypt \
certbot/certbot certonly --standalone -n --email marian@sendung.de --agree-tos -d green-spider.netzbegruenung.de
docker-compose up -d webapp
IPv6 "Floating IP" temporär an Device binden
sudo ip addr add 2a01:4f8:1c0c:811f::1 dev eth0
curl-Zugriff mittels IPv6
curl https://[2a01:4f8:1c0c:811f::1]