Dieses Projekt ist noch jung und im Moment nicht sehr stabil und deshalb solltest du bei der Verwendung in Produktion mit Vorsicht vorgehen.
There are several repos in the BookWyrm org, including documentation, a static landing page, and the actual Bookwyrm code. To run BookWyrm, you want the actual app code which is in bookwyrm-social/bookwyrm.
Der -Produktionszweig
von BookWyrm enthält eine Reihe von Werkzeugen die nicht auf dem main
-Zweig sind, die für den Betrieb in der Produktion geeignet sind zum Beispiel docker-compose
-Änderungen, um die Standardbefehle oder die Konfiguration von Containern zu aktualisieren und individuelle Änderungen an der Container-Konfiguration, um Dinge wie SSL oder regelmäßige Sicherungen zu aktivieren.
Anleitung für das Ausführen von BookWyrm in der Produktion:
git clone git@github.com:bookwyrm-social/bookwyrm.git
Produktionszweig
: git checkout production
cp .env.example .env
und aktualisiere Folgendes:DOMAIN
| Deine WebdomainEMAIL
| E-Mail-Adresse für die Verifizierung der certbot-DomainFLOWER_USER
| Dein eigener Benutzername für den Zugriff auf den Flower Queue MonitorEMAIL_HOST_USER
| Die "von"-Adresse, die die App beim Senden von E-Mails verwendetEMAIL_HOST_PASSWORD
| Das von deinem E-Mail-Dienst bereitgestellte Passwortbw-dev create_secrets
or manually update following in .env
:SECRET_KEY
| Eine schwer zu erratende geheime ZeichenfolgePOSTGRES_PASSWORD
| Setze sicheres Passwort für die DatenbankREDIS_ACTIVITY_PASSWORD
| Setze ein sicheres Passwort für das Redis Activity SubsystemREDIS_BROKER_PASSWORD
| Setze ein sicheres Passwort für das Redis Queue Broker SubsystemFLOWER_PASSWORD
| Dein eigenes sicheres Passwort für den Zugriff auf Flower Queue Monitor./bw-dev init_ssl
./bw-dev migrate
docker-compose up --build
, and make sure all the images build successfullySTRG-C
./bw-dev setup
und kopiere den Admin-Code, der beim Erstellen deines Admin-Kontos verwendet werden soll../bw-dev setup
sollte mit deinem Admin-Code abgeschlossen werden. Du kannst den Code jederzeit erhalten, indem du ./bw-dev admin_code
auf der Befehlszeile ausführst. Hier ist eine Beispielausgabe:*******************************************
Use this code to create your admin account:
c6c35779-af3a-4091-b330-c026610920d6
*******************************************
docker-compose up -d
Glückwunsch! Du hast es geschafft!! Konfigurieren deine Instanz, wie du möchtest.
BookWyrms db Service speichert täglich um Mitternacht UTC eine Sicherungskopie seiner Datenbank in sein /backups
-Verzeichnis. Sicherungen heißen backup__%Y-%m-%d.sql
.
Der Datenbankdienst hat ein optionales Skript zum periodischen Beschneiden des Backup-Verzeichnisses, so dass alle aktuellen täglichen Sicherungen beibehalten werden, aber für ältere Backups werden nur wöchentliche oder monatliche Backups aufbewahrt. Um dieses Skript zu aktivieren:
postgres-docker/cronfile
ausdocker-compose up --build
Du kannst mit docker cp
Backups aus dem Backup-Volume auf deinen Host-Rechner kopieren:
docker-compose ps
aus, um den vollständigen Namen des Datenbankdienstes zu bestätigen (es ist wahrscheinlich bookwyrm_db_1
.docker cp <container_name>:/backups <host machine path>
ausBookWyrm hat mehrere Dienste, die auf ihren Standard-Ports laufen. Dies bedeutet, dass, je nachdem, was auf deinem Host-Rechner läuft, können Sie auf Fehler beim Erstellen oder Ausführen von BookWyrm stoßen, wenn Versuche fehlschlagen, sich an diese Ports zu binden.
Wenn dies geschieht, musst du deine Konfiguration ändern, um Dienste auf verschiedenen Ports auszuführen. Dies kann eine oder mehrere Änderungen der folgenden Dateien erfordern:
docker-compose.yml
nginx/production.conf
or nginx/reverse_proxy.conf
depending on NGINX_SETUP in .env-file.env
(Sie erstellen diese Datei selbst während des Setups)Wenn du bereits einen Webserver auf deinem Rechner betreibst, musst du einen Reverse-Proxy einrichten.
Da BookWyrm ein junges Projekt ist, arbeiten wir noch immer an einem stabilen Veröffentlichungsplan und es gibt viele Fehler und große Änderungen. Es gibt ein GitHub Team, das markiert werden kann, wenn es etwas Wichtiges über ein Update gibt und dem du beitreten kannst, indem du deinen GitHub-Namen teilst. Es gibt einige Möglichkeiten, sich mit uns in Kontakt zu setzen: