Zum Fußzeileninhalt springen
VERWENDUNG VON IRONSECUREDOC

Nextcloud Docker Compose (Wie es für Entwickler funktioniert)

Was ist Docker?

Docker ist ein kostenloses, quelloffenes Framework, das die Bereitstellung und Skalierung von Anwendungen innerhalb von leichten Containern automatisiert. Es verpackt Anwendungscode zusammen mit allen Abhängigkeiten, wie Bibliotheken, Werkzeuge und Konfigurationen, in einem einzelnen Paket und läuft einheitlich in jeder Umgebung, sei es auf dem Laptop des Entwicklers, dem Testserver oder dem eigentlichen Produktions-Cloud-Server.

Container sind nicht dasselbe wie traditionelle virtuelle Maschinen. Container teilen den OS-Kernel eines Host-Systems, was es viel effizienter und schneller macht, sie zu starten.

Im Wesentlichen definiert Docker eine Anwendung und ihre Umgebung durch Docker-Images, die Vorlagen für die Erstellung von Containern sind. Orchestrierungswerkzeuge umfassen Docker Compose für Multi-Container-Anwendungen, und Docker Hub ist das zentrale Repository, in dem wir Images teilen.

Was ist Nextcloud?

Nextcloud Docker Compose veranschaulicht, wie Docker-Container genutzt werden, um eine isolierte, portable und skalierbare Umgebung für die selbst gehostete Cloud-Speicheranwendung Nextcloud bereitzustellen. Diese beliebte Lösung unterstützt Dateispeicherung und -freigabe, Kalender, Kontakte und mehr, während sie vollständige Kontrolle über die Daten ermöglicht.

Es vereinfacht die Einrichtung, da Abhängigkeiten wie PHP und der Webserver in einem Container enthalten sind; Docker macht die Installation und Verwaltung von Nextcloud viel einfacher. Dies garantiert auch, dass alles identisch in verschiedenen Umgebungen läuft, was reibungslose Bereitstellungen auf unterschiedlichen Systemen ermöglicht.

Nextcloud in Docker zu betreiben ist einfach, modular und skalierbar. Zum Beispiel, in einer Multi-Container-Einrichtung mit Docker Compose, führen Sie separate Container für die Nextcloud-Datenbank (z.B. MySQL oder MariaDB), Caching (z.B. Redis) und die Nextcloud-Anwendung selbst aus. Dies erhöht die Flexibilität und ermöglicht eine einfachere Verwaltung und Skalierung von Nextcloud-Instanzen.

Funktionen von Nextcloud

Nextcloud Docker bietet einfache Bereitstellung und Verwaltungsfunktionen mit allen wichtigen Schlüsselmerkmalen, die unten aufgeführt sind:

  • Vereinfachte Einrichtung: Einfache Installation durch Dockers Fähigkeit, alle Abhängigkeiten wie PHP und Webserver in einem einzigen Container zu tragen, was eine mühelose Installation und Konfiguration erleichtert.
  • Portabilität: Docker-Container sind über verschiedene Umgebungen und Knoten hinweg portabel und verhindern Kompatibilitätsprobleme beim Verschieben Ihrer Nextcloud-Instanz zwischen Servern oder Cloud-Umgebungen.
  • Isolation: Container sind vom Host-System und anderen Containern isoliert, wodurch sichergestellt wird, dass Abhängigkeiten und Konfigurationen nicht mit anderen Diensten auf derselben Maschine kollidieren.
  • Skalierbarkeit: Mit Docker Compose können Sie Nextcloud einfach skalieren, indem Sie zusätzliche Container für Datenbanken, Caching oder Load-Balancing-Dienste bereitstellen, um in großen Umgebungen eine überlegene Leistung zu erzielen.
  • Anhaltender Speicher: Durch das externe Einbinden von Speichervolumes in den Container bleiben Daten selbst nach Container-Neustarts oder Upgrades bestehen.
  • Einfache Upgrades: Nahtloses Upgrade von Nextcloud oder seinen Abhängigkeiten über Docker durch das Abrufen einer neuen Image-Version und das Neustarten des Containers; keine verwirrenden Migrationen sind notwendig.
  • Sicherheit: Die inhärente Isolation von Docker minimiert die Angriffsfläche, indem sie die Umgebung von Nextcloud von ihrem Host und anderen Anwendungen trennt.

All diese Funktionen machen Nextcloud Docker zu einer effizienten Lösung für das Hosting Ihrer privaten Cloud-Infrastruktur.

Installieren Sie Nextcloud

Voraussetzungen

  • Windows 10/11 (Pro, Enterprise oder Education) mit WSL 2-Unterstützung.
  • Docker Desktop ist installiert und läuft auf Windows.
  • Grundlegende Vertrautheit mit der Verwendung eines Terminals oder Eingabeaufforderung.

Ziehen Sie das Nextcloud Docker-Image

Ziehen Sie das offizielle Nextcloud Docker-Image von Docker Hub, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

docker pull nextcloud
docker pull nextcloud
SHELL

Alternativ öffnen Sie die Docker-Anwendung und suchen Sie im Suchfeld nach "nextcloud".

Um die Nextcloud-Installation auszuführen, verwenden Sie den folgenden Befehl in der Eingabeaufforderung:

docker run -d -p 8080:80 nextcloud
docker run -d -p 8080:80 nextcloud
SHELL

Dieser Befehl lädt das Nextcloud-Image herunter und erstellt einen neuen Container, der auf Port 8080 zugänglich ist.

MariaDB für die Datenbank einrichten

Nextcloud benötigt eine Datenbank, um seine Daten zu speichern. Wir können MariaDB als Drop-in-Ersatz für MySQL verwenden.

Zuerst das MariaDB-Image ziehen:

docker pull mariadb
docker pull mariadb
SHELL

Erstellen Sie den MariaDB-Container mit diesem Befehl:

docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
docker run -d \
  --name nextcloud-db \
  -e MYSQL_ROOT_PASSWORD=your_root_password \
  -e MYSQL_DATABASE=nextcloud \
  -e MYSQL_USER=nextcloud_user \
  -e MYSQL_PASSWORD=your_password \
  mariadb
SHELL

Ersetzen Sie your_root_password und your_password durch starke Passwörter Ihrer Wahl. Dieser Befehl richtet einen MariaDB-Container mit dem Namen nextcloud-db mit einer Datenbank namens nextcloud und einem Benutzer namens nextcloud_user ein.

Nextcloud-Weboberfläche

Zugriff auf die Nextcloud-Installation durch Öffnen eines Web-Browsers und Eingabe der IP-Adresse des Servers oder des Domain-Namens, wo Nextcloud gehostet ist. Für lokale Installationen verwenden Sie:

http://localhost:8080/

Richten Sie das Admin-Konto ein

Beim Zugriff auf die Einrichtungsseite ein Admin-Benutzer erstellen. Das Nextcloud-CLI ist auch verfügbar für das Verwalten von Konfigurationen und Setups, falls benötigt.

Nach Eingabe der erforderlichen Informationen die Datenbankverbindung konfigurieren:

  1. Datenbank-Host: Verwenden Sie localhost für lokale Datenbanken oder den Datenbankcontainernamen (z.B. nextcloud-db), wenn Sie Docker verwenden.
  2. Datenbank-Benutzername und Passwort: Bei der MariaDB-Einrichtung bereitgestellt.
  3. Datenbankname: nextcloud in diesem Beispiel.

Tragen Sie alle notwendigen Details ein und klicken Sie auf "Einrichtung abschließen", um die Installation abzuschließen.

Was ist IronSecureDoc?

IronSecureDoc ist ein Dokumentensicherheitstool, das zum Verschlüsseln, Zurückhalten und digitalen Signieren sensibler Dateien verwendet wird. Es sichert PDFs und ermöglicht Benutzern, persönliche Daten und vertrauliche Informationen effektiv zu kontrollieren.

Installation und Ausführung von IronSecureDoc

Ziehen Sie das IronSecureDoc Docker-Image mit:

docker pull ironsoftwareofficial/ironsecuredoc
docker pull ironsoftwareofficial/ironsecuredoc
SHELL

Um den IronSecureDoc-Container auszuführen, verwenden Sie:

docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
docker container run --rm -p 8080:8080 \
  -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> \
  -e ENVIRONMENT=Development \
  -e HTTP_PORTS=8080 \
  ironsoftwareofficial/ironsecuredoc:latest
SHELL

Ersetzen Sie <IRONSECUREDOC_LICENSE_KEY> durch Ihren tatsächlichen Lizenzschlüssel. Dieser Befehl startet den IronSecureDoc-Container und macht ihn auf Port 8080 zugänglich.

Verwendung von IronSecureDoc mit Docker-Container

IronSecureDoc kann nach der Installation über seine REST-API erreicht werden. Dokumentation und API-Endpunkte finden Sie unter http://localhost:8080/swagger/index.html.

Um ein Dokument zur Verschlüsselung einzureichen, verwenden Sie eine POST-Anfrage über curl:

curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
curl -X 'POST' \
  'http://localhost:8080/v1/document-services/pdfs/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'
SHELL

Dies leitet das Dokument an IronSecureDoc weiter und wendet die entsprechende Verschlüsselung an.

Abschluss

Nextcloud und IronSecureDoc dienen unterschiedlichen Zwecken in der sicheren Datenverarbeitung. Nextcloud ist eine robuste, selbst gehostete Cloud-Plattform für das Verwalten und Teilen von Daten, die vollständige Datenschutzkontrolle und Skalierbarkeit über Docker bietet. IronSecureDoc bietet erweiterte Dokumentenverschlüsselung und sorgt so für den sicheren Umgang mit sensiblen Dateien. Die Integration mit Docker macht beide Lösungen geeignet für skalierbare, sichere Umgebungen.

Klicken Sie hier für weitere Informationen zur IronSecureDoc-Lizenzierung. Für weitere Informationen zu den von Iron Software angebotenen Produktlinien, schauen Sie hier.

Häufig gestellte Fragen

Wie kann Docker Compose die Bereitstellung von Nextcloud vereinfachen?

Docker Compose ermöglicht die Orchestrierung von Multi-Container-Anwendungen, was die Bereitstellung von Nextcloud vereinfacht, indem alle Abhängigkeiten in isolierte, portable und skalierbare Container gepackt werden.

Welche Vorteile bietet die Verwendung von Docker für Nextcloud?

Die Verwendung von Docker für Nextcloud bietet Vorteile wie vereinfachte Einrichtung, verbesserte Portabilität, Isolation, Skalierbarkeit, dauerhaften Speicher, einfache Upgrades und verbesserte Sicherheit.

Wie richtet man Nextcloud mit Docker ein?

Sie können Nextcloud mit Docker einrichten, indem Sie das offizielle Nextcloud Docker-Image mit dem Befehl docker pull nextcloud ziehen und es mit docker run -d -p 8080:80 nextcloud ausführen.

Welche Komponenten sind in einer Docker-Einrichtung für Nextcloud beteiligt?

Eine Docker-Einrichtung für Nextcloud umfasst typischerweise separate Container für die Anwendung selbst, eine Datenbank und Caching-Services, die jeweils mit Docker Compose verwaltet werden, um Modularität und Skalierbarkeit zu gewährleisten.

Wie verbessert IronSecureDoc die Datensicherheit für Nextcloud?

IronSecureDoc verbessert die Datensicherheit für Nextcloud durch erweiterte Dokumentenverschlüsselung, Schwärzung und digitale Signaturfunktionen, die sicherstellen, dass sensible Dateien im Docker-Umfeld sicher verarbeitet werden.

Kann IronSecureDoc mit Docker für die Nextcloud-Bereitstellung integriert werden?

Ja, IronSecureDoc kann mit Docker integriert werden, um die Nextcloud-Bereitstellung zu verbessern, indem sein Docker-Image verwendet wird. Diese Integration ermöglicht eine sichere Dokumentenverarbeitung über die REST-API im Docker-Umfeld.

Warum eine selbstgehostete Lösung wie Nextcloud statt Cloud-Anbietern wählen?

Die Wahl einer selbstgehosteten Lösung wie Nextcloud gegenüber Cloud-Anbietern bietet vollständige Kontrolle über die Privatsphäre, Datensouveränität und die Möglichkeit, die Umgebung an spezifische organisatorische Bedürfnisse anzupassen, während Docker für eine effiziente Bereitstellung genutzt wird.

Welche Rolle spielt Docker bei der Sicherstellung der Leistung von Nextcloud in verschiedenen Umgebungen?

Docker stellt die konstante Leistung von Nextcloud in verschiedenen Umgebungen sicher, indem die Anwendung und alle ihre Abhängigkeiten in einem einzigen Container zusammengefasst werden, was Konflikte verhindert und den Bereitstellungsprozess vereinfacht.

Wie arbeiten Docker und Nextcloud zusammen, um eine skalierbare Cloud-Speicherlösung bereitzustellen?

Docker und Nextcloud arbeiten zusammen, indem sie Container verwenden, um die Anwendung effizient zu verwalten und zu skalieren, sodass Ressourcen und Dienste bei wachsender Nachfrage einfach hinzugefügt werden können, während die Datenintegrität und -sicherheit erhalten bleibt.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen