Installation und Konfiguration des Katalogs

Dieser Katalog kann von jeder Organisation verwendet werden, die ihre eigene Liste öffentlicher digitaler Waren erstellen möchte. Der vollständige Code ist öffentlich im ‚Produktverzeichnis-Repository‘_ verfügbar

Bitte beachten Sie, dass diese Anweisungen für Benutzer gedacht sind, die über einen technischen Hintergrund verfügen und mit Rails-Anwendungen und dem Einsatz von Docker vertraut sind

Um eine Instanz des Online-Verzeichnisses/-Katalogs zu konfigurieren und auszuführen, führen Sie bitte die folgenden Schritte durch:

  • Kopieren Sie das Produktverzeichnis-Repository in ein Verzeichnis auf Ihrem Server oder in Ihrer Entwicklungsumgebung

  • Konfigurieren Sie die Umgebungsvariablen für die Anwendung. Die Anwendung erfordert die Einstellung einiger Variablen in Ihrer Umgebung. Wir stellen ein Muster eines Shell-Scripts zur Verfügung, das die passenden Variablen für Entwicklungs-, Test- oder Produktionsumgebungen einstellt. Die Variablen lauten wie folgt:

  • SECRET_KEY_BASE - Festlegung eines individuellen geheimen Kennworts. Dies wird für die Authentifizierung und Verifizierung des Benutzers verwendet

  • DATABASE_NAME, DATABASE_USER, DATABASE_PASSWORD - Verbinden der Daten für die Postgres-Datenbank. Stellen Sie sicher, dass diese Werte mit den Einstellungen in der docker.compose.yml-Datei für die Datenbank-Instanz (nachstehend beschrieben) übereinstimmen

  • TEST_DATABASE_NAME, TEST_DATABASE_USER, TEST_DATABASE_PASSWORD - diese Werte müssen eingestellt werden und auf eine Testdatenbank-Instanz zeigen, um die Unit- oder Integrationstests auszuführen

  • ESRI_CLIENT_ID, ESRI_CLIENT_SECRET - die Anwendung verwendet ESRI für geografische Daten. Sie können sich in einem Konto anmelden und auf eine Token zugreifen.

  • GOOGLE_TRACKER - fügen Sie eine Tracking-ID ein, um Google Analytics zu verwenden

  • JENKINS_URL, JENKINS_USER, JENKINS_PASSWORD - um die Produkteinführungsfunktion zu verwenden, muss die Anwendung mit einer laufenden Jenkins-Instanz verbunden werden.

  • MAILGUN_API_KEY, MAILGUN_DOMAIN - die Anwendung verwendet Mailgun, um E-Mail-Benachrichtigungen an Benutzer zu versenden. Verwenden Sie hier die Mailgun-Kontodaten, um diese Funktion zu aktivieren

  • CAPTCHA_SITE_KEY, CAPTCHA_SECRET_KEY - die Haupt-Anmeldeseite verwendet Captcha. Geben Sie Ihre Captcha-Zugangsdaten ein, um diese Funktion zu nutzen

  • GITHUB_USERNAME, GITHUB_PERSONAL_TOKEN - die Anwendung liest automatisch Daten aus allen GitHub-Repositories, die mit Produkten verbunden sind. Um dies zu tun, geben Sie einen Github-Benutzernamen und ein API-Token ein.

  • Bearbeiten Sie die docker-compose.yml-Datei, um Benutzernamen und Kennwort der Datenbank festzulegen.

  • Bauen Sie die Anwendung mit folgenden Docker Compose-Befehlen aus dem Stammverzeichnis der Anwendung auf und führen Sie diese aus:

  • docker-compose build

  • docker-compose up -d

  • Alternativ können Sie die folgenden Befehle verwenden, um die App außerhalb von Docker Compose auszuführen:

  • rails db:run_if_no_db && rails db:create_db_with_public_data

  • rails db:migrate

  • rails assets:precompile RAILS_ENV=production

  • rails server -e production

  • Sobald die Anwendung aufgebaut und gestartet ist, wird sie auf port 3000 verfügbar sein. Bitte beachten Sie, dass die Docker Compose-Datei auch nginx und certbot nutzt, um der Anwendung unter Nutzung von SSL/Port 443 zu dienen. Bitte entfernen Sie diese Einträge, wenn sie nicht benötigt werden.

  • Für die Anwendung muss ein laufender Redis-Server zur Verfügung stehen. Der Redis-Server wird automatisch als Teil von Docker Compose gestartet. Wenn der Katalog manuell gestartet wird, muss Redis auf Ihrem Server laufen.

  • Ein Standard-Benutzerkonto mit Administratorrechten wird automatisch erstellt. Die Zugangsdaten lauten admin@admin-user.org/admin-password

  • Außerdem erlaubt die Anwendung die Festlegung einer Standard-Domain-Bezeichnung. Ausschließlich Benutzer mit E-Mail-Adressen, die mit dieser Domain verknüpft sind, können Administratoren der Seite werden. Um dies einzustellen:

  • Erstellen Sie einen Organisationseintrag für Ihre Organisation. Achten Sie darauf, dass der Slug für diese Organisation erstellt wird

  • Navigieren Sie zur Einstellungen-Seite (<online catalog URL>/Einstellungen)

  • Erstellen Sie eine neue Einstellung namens ‚Standardorganisation‘. Der Wert für diese Einstellung ist der Slug für Ihre Organisation.