Dateispeicher: S3 (Pro)
Einführung
Auf Basis des Datei-Management-Plugins wird ein zusätzlicher Dateispeichertyp unterstützt, der mit dem S3-Protokoll kompatibel ist. Jeder Objektspeicherdienst, der das S3-Protokoll unterstützt, kann problemlos angebunden werden, darunter Amazon S3, Alibaba Cloud OSS, Tencent Cloud COS, MinIO und Cloudflare R2. Dadurch werden Kompatibilität und Flexibilität der Speicherdienste weiter verbessert.
Funktionsmerkmale
-
Clientseitiger Upload: Der Datei-Upload muss nicht über den NocoBase-Server erfolgen, sondern wird direkt mit dem Dateispeicherdienst durchgeführt. Dadurch wird ein effizienteres und schnelleres Upload-Erlebnis ermöglicht.
-
Privater Zugriff: Beim Zugriff auf Dateien sind alle URLs signierte, temporär autorisierte Adressen, wodurch die Sicherheit und zeitliche Gültigkeit des Dateizugriffs gewährleistet werden.
Anwendungsfälle
-
Dateitabellenverwaltung: Zentrale Verwaltung und Speicherung aller hochgeladenen Dateien, mit Unterstützung für verschiedene Dateitypen und Speicherarten zur einfachen Kategorisierung und Suche.
-
Speicherung von Anhang-Feldern: Speicherung von in Formularen oder Datensätzen hochgeladenen Anhängen mit Unterstützung der Verknüpfung zu den jeweiligen Datensätzen.
Plugin-Konfiguration
-
Aktivieren Sie das Plugin plugin-file-storage-s3-pro
-
Klicken Sie auf "Setting-> FileManager", um die Einstellungen der Dateiverwaltung aufzurufen
-
Klicken Sie auf die Schaltfläche "Add new" und wählen Sie "S3 Pro"

- Nach dem Öffnen der Einblendung sehen Sie ein Formular mit zahlreichen auszufüllenden Feldern. In den folgenden Abschnitten finden Sie die entsprechenden Parameterinformationen für die jeweiligen Dateidienste, die Sie korrekt in das Formular eintragen können.

Konfiguration der Anbieter
Amazon S3
Bucket erstellen
-
Öffnen Sie https://ap-southeast-1.console.aws.amazon.com/s3/home, um die S3-Konsole aufzurufen
-
Klicken Sie rechts auf die Schaltfläche "Create bucket"

- Geben Sie den Bucket Name (Namen des Buckets) ein. Die übrigen Felder können auf den Standardeinstellungen belassen werden. Scrollen Sie zum unteren Seitenende und klicken Sie auf die Schaltfläche "Create", um die Erstellung abzuschließen.


CORS-Konfiguration
- Öffnen Sie die Liste der Buckets und klicken Sie auf den soeben erstellten Bucket, um dessen Detailseite aufzurufen

- Klicken Sie auf die Registerkarte "Permission" und scrollen Sie nach unten zum Abschnitt für die CORS-Konfiguration


- Tragen Sie die folgende Konfiguration ein (Sie können die Konfiguration nach Bedarf detaillierter anpassen) und speichern Sie sie

AccessKey und SecretAccessKey abrufen
- Klicken Sie oben rechts auf der Seite auf die Schaltfläche "Security credentials"

- Scrollen Sie nach unten zum Abschnitt "Access Keys" und klicken Sie auf die Schaltfläche "Create Access Key".

- Klicken Sie auf „Zustimmen“ (hier wird zur Demonstration das Hauptkonto verwendet; für Produktionsumgebungen wird die Verwendung von IAM empfohlen).

- Speichern Sie den auf der Seite angezeigten Access key und Secret access key

Parameter abrufen und konfigurieren
-
AccessKey ID und AccessKey Secret sind die im vorherigen Schritt abgerufenen Werte. Tragen Sie sie sorgfältig ein
-
Öffnen Sie im Detailbereich des Buckets das Bedienfeld properties. Dort finden Sie den Namen des Buckets und die Informationen zur Region.

Öffentlicher Zugriff (optional)
Diese Konfiguration ist nicht erforderlich. Sie wird vorgenommen, wenn die hochgeladenen Dateien vollständig öffentlich zugänglich sein sollen
- Öffnen Sie das Bedienfeld Permissions, scrollen Sie zu Object Ownership, klicken Sie auf „Bearbeiten“ und aktivieren Sie ACLs

- Scrollen Sie zu Block public access, klicken Sie auf „Bearbeiten“ und wählen Sie die Einstellung, mit der die Steuerung durch ACLs erlaubt wird

- Aktivieren Sie in NocoBase die Option Public access
Konfiguration von Vorschaubildern (optional)
Diese Konfiguration ist optional und wird verwendet, wenn die Größe oder Darstellung der Bildvorschau optimiert werden soll. Bitte beachten Sie, dass bei dieser Bereitstellung zusätzliche Kosten entstehen können. Einzelheiten entnehmen Sie bitte den entsprechenden Bedingungen von AWS.
-
Rufen Sie Dynamic Image Transformation for Amazon CloudFront auf.
-
Klicken Sie unten auf der Seite auf die Schaltfläche
Launch in the AWS Console, um die Bereitstellung zu starten.
-
Führen Sie die Konfiguration gemäß den Anweisungen durch. Die folgenden Optionen erfordern besondere Aufmerksamkeit:
- Beim Erstellen des Stacks müssen Sie den Namen eines Amazon-S3-Buckets angeben, der die Quellbilder enthält. Geben Sie den Namen des zuvor erstellten Buckets ein.
- Wenn Sie die Bereitstellung der Demo-UI auswählen, können Sie nach Abschluss der Bereitstellung die Bildverarbeitungsfunktionen über diese Oberfläche testen. Wählen Sie in der AWS-CloudFormation-Konsole Ihren Stack aus, wechseln Sie zur Registerkarte „Outputs“, suchen Sie den Wert des Schlüssels DemoUrl und klicken Sie auf den Link, um die Demo-Oberfläche zu öffnen.
- Diese Lösung verwendet die
sharp-Node.js-Bibliothek zur effizienten Bildverarbeitung. Sie können den Quellcode aus dem GitHub-Repository herunterladen und nach Bedarf anpassen.

-
Warten Sie nach Abschluss der Konfiguration, bis sich der Bereitstellungsstatus in
CREATE_COMPLETEgeändert hat. -
Beachten Sie bei der Konfiguration in NocoBase die folgenden Punkte:
Thumbnail rule: Geben Sie die Parameter für die Bildverarbeitung ein, z. B.?width=100. Weitere Informationen finden Sie in der AWS-Dokumentation.Access endpoint: Geben Sie den Wert von Outputs -> ApiEndpoint nach der Bereitstellung ein.Full access URL style: Ignore muss aktiviert werden (da der Bucket-Name bereits bei der Konfiguration angegeben wurde und beim Zugriff nicht erneut benötigt wird).

Beispielkonfiguration

Alibaba Cloud OSS
Bucket erstellen
- Öffnen Sie die OSS-Konsole unter https://oss.console.aliyun.com/overview

- Öffnen Sie im linken Menü "Buckets" und klicken Sie anschließend auf die Schaltfläche "Create Bucket", um mit der Erstellung des Buckets zu beginnen

-
Geben Sie die Informationen zum Bucket ein und klicken Sie abschließend auf die Schaltfläche Create
-
Bucket Name: Wählen Sie einen Namen passend zu Ihrem Geschäftsbereich; der Name ist frei wählbar
-
Region: Wählen Sie die Region, die Ihrem Standort am nächsten liegt
-
Die übrigen Optionen können auf den Standardeinstellungen belassen oder nach Bedarf konfiguriert werden
-

CORS-Konfiguration
- Öffnen Sie die Detailseite des im vorherigen Schritt erstellten Buckets

- Klicken Sie im mittleren Menü auf "Content Security -> CORS"

- Klicken Sie auf die Schaltfläche "Create Rule", geben Sie die entsprechenden Informationen ein, scrollen Sie nach unten und klicken Sie auf "OK". Sie können sich am folgenden Screenshot orientieren oder eine detailliertere Konfiguration vornehmen

AccessKey und SecretAccessKey abrufen
- Klicken Sie unterhalb Ihres Avatars oben rechts auf "AccessKey"

-
Zur Vereinfachung der Demonstration wird hier das Hauptkonto zum Erstellen des AccessKey verwendet. Für den produktiven Einsatz wird empfohlen, RAM dafür zu verwenden. Weitere Informationen finden Sie unter https://help.aliyun.com/zh/ram/user-guide/create-an-accesskey-pair-1?spm=5176.28366559.0.0.1b5c3c2fUI9Ql8#section-rjh-18m-7kp
-
Klicken Sie auf die Schaltfläche "Create AccessKey"

- Führen Sie die Kontoverifizierung durch

- Speichern Sie den auf der Seite angezeigten Access key und Secret access key

Parameter abrufen und konfigurieren
-
AccessKey ID und AccessKey Secret sind die im vorherigen Schritt abgerufenen Werte
-
Öffnen Sie die Detailseite des Buckets und rufen Sie den Bucket ab

- Scrollen Sie nach unten, um die Region abzurufen (der nachfolgende Teil ".aliyuncs.com" wird nicht benötigt)

- Rufen Sie die Endpoint-Adresse ab. Beim Eintragen in NocoBase muss das Präfix https:// hinzugefügt werden

Konfiguration von Vorschaubildern (optional)
Diese Konfiguration ist optional und wird nur verwendet, wenn die Größe oder Darstellung der Bildvorschau optimiert werden soll.
-
Tragen Sie die entsprechenden Parameter für
Thumbnail ruleein. Weitere Informationen zu den Parametern finden Sie unter Bildverarbeitungsparameter. -
Full upload URL styleundFull access URL stylekönnen identisch eingestellt werden.
Beispielkonfiguration

MinIO
Bucket erstellen
- Klicken Sie im linken Menü auf Buckets -> klicken Sie auf Create Bucket, um die Erstellungsseite aufzurufen
- Geben Sie den Namen des Buckets ein und klicken Sie auf die Schaltfläche zum Speichern
AccessKey und SecretAccessKey abrufen
- Öffnen Sie Access Keys -> klicken Sie auf die Schaltfläche Create access key, um die Erstellungsseite aufzurufen

- Klicken Sie auf die Schaltfläche zum Speichern

- Speichern Sie den Access Key und Secret Key aus dem Dialogfenster für die spätere Konfiguration

Parameterkonfiguration
-
Öffnen Sie in NocoBase die Seite File manager
-
Klicken Sie auf die Schaltfläche Add new und wählen Sie S3 Pro
-
Füllen Sie das Formular aus
- AccessKey ID und AccessKey Secret entsprechen den im vorherigen Schritt gespeicherten Werten
- Region: Bei einem privat bereitgestellten MinIO gibt es kein Region-Konzept. Sie können "auto" konfigurieren
- Endpoint: Geben Sie den Domainnamen oder die IP-Adresse des bereitgestellten Dienstes ein
- Full access URL style muss auf Path-Style gesetzt werden
Beispielkonfiguration

Tencent COS
Sie können den oben beschriebenen Dateidiensten folgen. Die Vorgehensweise ist ähnlich
Beispielkonfiguration

Cloudflare R2
Sie können den oben beschriebenen Dateidiensten folgen. Die Vorgehensweise ist ähnlich
Beispielkonfiguration

Verwendung durch Benutzer
Weitere Informationen finden Sie in der Dokumentation zur Verwendung des file-manager-Plugins: https://docs.nocobase.com/data-sources/file-manager/.

