Skip to content

Amythethird/Batta

Repository files navigation

Batta

Willkommen bei Batta, einem Projekt im Kontext des Studienschwerpunkts Weaving the Web des Medieninformatik Masters an der Technischen Hochschule Köln.

Das Projekt baut auf dem Veedelsretter auf und soll die Idee der Plattform unter der Thematik der Nachhaltigkeit neu aufgreifen. Weitere Informationen zur Ausgangssituation können dem Wiki sowie der Webseite des Studienschwerpunkts entnommen werden.

Überblick

Team

TH Köln
Campus Gummersbach
Fakultät für Informatik und Ingenieurwissenschaften
Steinmüllerallee 1
51643 Gummersbach

Projektmodule

Projekt I: Vision und Konzept

Im Rahmen des Moduls "Projekt I: Vision und Konzept" im Wintersemester 2021/2022 wurde ein Design Sprint durchgeführt und auf dessen Grundlage ein Konzept entwickelt. Sowohl Design Sprint als auch Konzept wurden im Wiki dokumentiert und sind dort abrufbar. Das Modul "Projekt I: Vision und Konzept" wurde im März 2022 mit einer Abschlusspräsentation abgeschlossen.

Projekt II: Entwicklung

Im Rahmen des Moduls "Projekt II: Entwicklung" im Sommersemester 2022 wurde ein MVP entwickelt. Die Dokumentation des MVPs sowie der Projektarbeit ist im Wiki abrufbar. Das Modul "Projekt II: Entwicklung" wird im September 2022 mit einer Abschlusspräsentation abgeschlossen.

Projekt III: Evaluation und Verwertung

Im Rahmen des Moduls "Projekt III: Evaluation und Verwertung" im Sommersemester 2023 wurden ein Business Plan erstellt und verschiedene Bereiche der Thematik Zahlung behandelt. Die Zusammenfassung des Business Plans sowie die Dokumentation der Erkenntnisse zum Thema Zahlung sind im Wiki abrufbar. Das Modul "Projekt III: Evaluation und Verwertung" wurde im März 2023 mit einer Abschlusspräsentation abgeschlossen.

Setup-Guide

Folge den hier angegebenen Schritten, um das Projekt aufzusetzen.

Voraussetzungen

Bitte installiere die folgenden Technologien und Tools, um die Entwicklung zu ermöglichen.

Entwicklungsumgebung

Um deine Entwicklungsumgebung aufzusetzen, clone zunächst dieses GitHub-Repository und öffne den Projektordner in deinem Editor. Wenn du Visual Studio Code nutzt, empfiehlt es sich, die Extensions zu installieren, die dir über den Workspace vorgeschlagen werden.

Füge anschließend die benötigten Environment-Dateien (benannt mit ".env") in den entsprechenden Ordnern ein. Du findest den Inhalt der Dateien im Discord-Channel des Teams als angepinnte Nachricht. Frage bei Bedarf ein Team-Mitglied um Hilfe. Die folgenden Ordner benötigen eine passende .env Datei:

  • /strapi

Abhängigkeiten installieren

Installiere die Abhängigkeiten der Anwendungen, indem du folgende Befehle ausführst:

Projektordner

npm install

Frontend

cd frontend
npm install

Strapi

cd strapi
npm install

Projekt starten

Führe zum lokalen Starten der Anwendungen den folgenden Befehl im Projektverzeichnis aus:

npm start

Anschließend ist das Frontend unter http://localhost:3000 und Strapi unter http://localhost:2500 erreichbar.

Zugänge

Um einen einheitlichen Stand zu haben, wurden für die Entwicklung Dummy-Zugänge angelegt. Die Zugangsdaten für die gehostete Instanz des Projekts findest du im Discord-Channel des Teams als angepinnte Nachricht. Frage bei Bedarf ein Team-Mitglied um Hilfe. Um dich anzumelden, wenn du das Projekt bei dir gestartet hast, kannst du folgende Zugangsdaten nutzen:

Strapi Admin-Panel

Deployment

Das Deployment erfolgt mit Docker über den Docker Hub, indem die Images der Anwendungen in folgende Repositories hochgeladen werden:

Die Images werden anschließend mit Docker Compose aus dem Docker Hub geladen und gestartet, sodass sie unter den folgenden Adressen erreichbar sind:

Für den Deployment-Prozess sind folgende Schritte durchzuführen:

Images bauen

Führe jeweils die folgenden Befehle aus:

Frontend

cd frontend
docker build -t mweiershaeuser/batta-frontend .

Strapi

cd strapi
docker build -t mweiershaeuser/batta-strapi .

Images in das Repository pushen

Für diesen Schritt benötigst du Berechtigungen für das Repository. Lege einen Account im Docker Hub an und wende dich an ein Team-Mitglied, damit dir die entsprechenden Berechtigungen erteilt werden. Anschließend meldest du dich mit deinem Docker Hub Account bei deiner lokalen Docker-Instanz (in der Regel über die Docker Desktop GUI) an und führst folgende Befehle aus:

Frontend

cd frontend
docker push mweiershaeuser/batta-frontend

Strapi

cd strapi
docker push mweiershaeuser/batta-strapi

Anwendungen auf Server starten

Wurden die Images im Repository hochgeladen, kannst du die Anwendungen auf einem Server starten. Kopiere dazu die Datei docker-compose.yaml in das Arbeitsverzeichnis auf deinem Server (via FTP) und führe dort folgenden Befehl (via SSH) aus:

sudo docker-compose up -d

Anschließend sollten die Docker-Container starten und auf folgenden Ports erreichbar sein:

  • Frontend: 8070
  • Strapi: 8071

Der Server kann nun entsprechend der individuellen Gegebenheiten konfiguriert werden, um die auf den Ports laufenden Anwendungen in der Regel mit einem Web-Server über Domain und TLS-Verschlüsselung erreichbar zu machen.

Partner:innen

  • Jan Kus, Railslove GmbH