Postmann is a simple example API for dockerized MongoDB. It has the ability to store Packagestations, Users and Shipments in the database. All of them can be filtered, patched and deleted. A frontend shows all stored Packagestations.
cd backend docker-compose build --no-cache (nur beim ersten Starten) docker-compose up
cd frontend npm run start
Alle Docker Container, Volumes und Images löschen .db Ordner löschen docker-compose build --no-cache
Ein konkretes Szenario für den hier erstellten Service, wäre ein international agierender Logistikdienstleister für Privat- und Geschäftskunden, welcher zudem ein Netz aus Paketstationen betreibt. Eine Eingliederung des Service in eine Gesamtarchitektur kann durchaus viellfälltig sein. Zunächst wären die abrufbaren Datenbestände nützlich für die Sendungsverfolgung und Abwicklungen in den Brief- bzw. Paketzentren. Ebenso würde man die Schnittstelle zur Informationsweitergabe über den Browser oder mobile Apps an Privat- und Geschäftskunden verwenden. Weitere Dienste könnten auf dem Datenbestand aufbauen, wie zum Beispiel, das gewährleisten der Ankunft von Waren und Schriftstücken, wie ein Einschreiben. Ähnlich wären die bereitgestellten Daten relevant für identitätsfeststellende Maßnahmen oder die Digitalisierung des Schriftverkehrs. Weitere Geschäftskunden-Lösungen wie Lagerlogistik und E-Commerce, sowie Supply-Chain könnten auf dem Datenbestand aufbauen und weitere Datenerhebungen strukturell ähnlich aufbauen.
-
Konflikte bei der Datenkonsistenz: Wenn mehrere Parteien gleichzeitig auf den Service zugreifen und Daten ändern, kann es zu Konflikten bei der Datenkonsistenz kommen, insbesondere wenn der Service keine effektiven Mechanismen zur Behandlung von Datenkonflikten hat.
-
Sicherheitsrisiken: Wenn der Service von mehreren Parteien genutzt wird, kann er anfälliger für Sicherheitsbedrohungen sein, wie beispielsweise Hacking, DDoS-Angriffe, Datenlecks oder Identitätsdiebstahl.
-
Einsatz von Verschlüsselung und Zugriffskontrolle: Um Sicherheitsrisiken zu minimieren, sollten sensible Daten verschlüsselt und der Zugriff auf den Service durch geeignete Zugriffskontrollen und Authentifizierungsmethoden beschränkt werden.
-
Regelmäßige Sicherheitsüberprüfungen und Audits: Regelmäßige Sicherheitsüberprüfungen und Audits können dazu beitragen, potenzielle Sicherheitsrisiken aufzudecken und zu beheben, bevor sie zu ernsthaften Problemen werden.
-
Regelmäßige Datensicherungen: Regelmäßige Datensicherungen können dazu beitragen, die Datenintegrität und -konsistenz zu gewährleisten, indem eine Wiederherstellung der Daten bei einem Ausfall oder Datenverlust ermöglicht wird.
-
Einschränkung von Berechtigungen: Eine Einschränkung von Berechtigungen kann helfen, indem verhindert wird, dass nicht autorisierte Benutzer auf sensible Daten zugreifen oder Änderungen an der Datenbank vornehmen.
-
Verwendung von Transaktionen in der MongoDB, damit Änderungen als einzelne atomare Einheit ausgeführt werden, somit würden bei einem Fehlschlag einer Transaktion alle Änderungen rückgängig gemacht.
-
Gewährleistung von Skalierbarkeit von Docker und MongoDB.
-
Backups und Recovery müssen vorbereitet und durchgeführt werden, um einen reibungslosen Betrieb zu gewährleisten und im Schadensfall schnell wieder agieren zu können.
-
Compliance: Wenn die MongoDB-Datenbank in einem Docker-Container für geschäftskritische oder sensible Anwendungen verwendet wird, sollten relevante Compliance-Anforderungen berücksichtigt werden, um die Einhaltung der Datenschutzrichtlinien sicherzustellen. Insbesondere sind hier verschiedene Datenschutzstandards in verschiedenen Ländern zu beachten.
-
Monitoring bzw. Überwachung wäre außerdem von Vorteil, um Fehler oder Sicherheitsvorfälle frühzeitig zu erkennen.
-
Kundensupport muss intern und extern gewährleistet sein, sowie technisch fähige Experten auf Abruf, falls es zu einem unvorhersehbaren Ereignis kommen sollte.
-
Die Automatisierung der Container über Docker-Compose oder Kubernetes kann den Arbeitsaufwand verringern, sowie die Bereitstellung und Verwaltung erleichtern.