S3互換バケットをNextcloud外部ストレージに接続する

NextcloudでS3互換バケットを表示するには、バンドルされている外部ストレージサポートアプリを有効にし、管理設定でAmazon S3マウントを追加して、プロバイダーのバケット、アクセスキー、シークレットキー、エンドポイントの詳細を入力します。Amazon以外のプロバイダーの場合は、ホスト名とパススタイル設定が最も注意が必要な項目です。マウントが緑色になっていることを確認し、アクセス権限を拡大する前に使い捨てファイルでテストしてください。

準備するもの

この手順では外部マウントを作成します。Nextcloudは既存のバケットに接続し、それをファイルフォルダ内のフォルダとして表示します。この手順では、ファイルをバケットに移行したり、バケットをNextcloudのプライマリストレージにしたり、Nextcloudのデータディレクトリを置き換えたりはしません。

  • 管理者アクセス:システム全体のマウントは、Nextcloudの管理設定で構成されます。
  • バケット名と認証情報:ストレージプロバイダーからS3アクセスキーIDとシークレットアクセスキーを取得してください。このバケットとその意図する操作に必要な権限のみを持つ専用キーを使用することをお勧めします。
  • 接続の詳細:汎用的なS3エンドポイントホスト名を取得し、プロバイダが必要とする場合は、リージョンとパス形式の要件も取得してください。ホスト名を要求する箇所に、バケット固有のURLを貼り付けないでください。
  • ネットワークとTLS: Nextcloudサーバーはエンドポイントに到達できる必要があります。プロバイダが別の構成を推奨する明確な理由を文書で示していない限り、HTTPSを使用してください。

Nextcloud 35 の管理マニュアルには、Amazon S3 および互換性のあるサービス向けの Amazon S3 バックエンドに関するドキュメントが記載されています。プロバイダーによって S3 API の動作、エンドポイントの形式、署名領域、必要な権限が異なるため、これらの値についてはプロバイダーのセットアップページを参照してください。既存のオブジェクトがどのように表示されるか不明な場合は、新規または空のバケット、あるいは明確に分離されたテスト用プレフィックスから始めてください。

外部ストレージのサポートを有効にする

  1. Nextcloud管理者としてサインインし、アプリを開きます。
  2. Nextcloudに同梱されている外部ストレージサポートアプリを探し、無効になっている場合は有効にしてください。このアプリはNextcloudに付属していますが、デフォルトでは無効になっています。
  3. プロフィールメニューを開き、「設定」を選択し、 「管理」の下にある「外部ストレージ」を選択します。

ストレージのドロップダウンにバックエンドが表示されない場合は、アプリが有効になっていること、およびアカウントに管理者権限があることを確認してください。メニューのラベルはリリースによって若干異なる場合があります。インストールがバージョン35でない場合は、対応するバージョンのNextcloud管理マニュアルを参照してください。

S3マウントを追加して設定する

  1. 新しいストレージ行では、マウントに「」のようなシンプルなフォルダ名Archiveを付けてください。これはNextcloudでユーザーに表示される名前であり、バケット名やパスではありません。スラッシュは含めないでください。
  2. ストレージバックエンドのドロップダウンメニューでAmazon S3を選択し、認証方法としてアクセスキーを選択してください。
  3. バケット名、アクセスキーID、およびシークレットアクセスキーは、発行されたとおりに正確に入力してください。コピー&ペースト時にスペースが追加されないように注意してください。シークレットはパスワードと同様に扱い、公開チケット、シェル履歴、または記事のスクリーンショットには含めないでください。
  4. Amazon ホスト型ストレージの場合は、バケットのリージョンを入力します。Amazon 以外のサービスの場合は、汎用 S3ホスト名(バケットのプレフィックスを除いたエンドポイント ホスト) を入力します。プロバイダーが署名リージョンを明示的に要求する場合は、リージョンを入力します。 などの値を使用する場合は、そのドキュメントに従いますauto。
  5. HTTPSを使用する場合は、 「SSLを有効にする」を選択してください。プロバイダから別のポートが指定されていない限り、ポートはデフォルトのままにしてください。
  6. まずはデフォルトの仮想ホストリクエストスタイルを試してください。プロバイダがのような形式のリクエストを要求する場合は、パススタイルを有効にしてください。この設定に関する正確な情報は、プロバイダのS3ガイドを参照してください。https://endpoint.example/buckethttps://bucket.endpoint.example
  7. プロバイダが明示的に要求しない限り、レガシー(v2)認証は無効にしてください。Nextcloudのドキュメントでは、v4がデフォルトであり、v2はほとんど必要ないと述べています。
  8. 「利用可能対象」では、このマウントを表示するユーザーまたはグループのみを選択してください。管理者設定で作成されたマウントは、デフォルトでは広く利用可能になっているため、プライベートデータや共有データを公開する前に制限を設定してください。

必須項目は入力が完了すると保存されます。ステータスインジケーターが緑色の場合はNextcloudが接続できることを示し、黄色または赤色の場合はマウントの検証に失敗したことを示します。エラー状態が続く場合は、ステータスアイコンをクリックするか、管理ページを再読み込みして再度確認してください。Nextcloudでは、エラーが発生したマウントは10分間利用不可と表示される場合があることに注意してください。

マウント動作を意図的に選択する

行のオプションメニューを開いて、マウントレベルの設定を確認してください。共有はデフォルトでは無効になっています。ユーザーがこのマウントからファイルを共有する必要がある場合にのみ有効にしてください。また、参照データ用にマウントを読み取り専用に設定したり、必要に応じてプレビューを有効にしたり、Nextcloud が外部の変更をチェックする頻度を選択したりすることもできます。これらのオプションは、Nextcloud 内部でのマウントの動作に影響しますが、ストレージプロバイダのバケットポリシーは変更しません。

マウントを追加しても、プロバイダ コンソールでの直接の変更が Nextcloud にすぐに反映されるとは限りません。Nextcloud はファイル キャッシュを保持しています。Nextcloud の外部でファイルが作成、変更、または削除された場合、キャッシュされたリストはスキャンによって更新されるまで古いままになる可能性があります。プロバイダ プッシュ通知のない S3 やその他のバックエンドの場合、Nextcloud は定期的なスキャンを で記録しますocc files_external:scan <mount_id>。 で ID を見つけocc files_external:list、Nextcloud のインストール ディレクトリから Web サーバー ユーザーとして OCC を実行し、ユーザーとコマンド ラッパーをインストールに合わせて調整してください。

接続のトラブルシューティング

  • 赤色または黄色のステータス:バケット名、キーペア、エンドポイントホスト名、リージョン/署名リージョン、およびサーバー側のネットワークアクセスが正確であることを再確認してください。NextcloudホストからのDNSおよびアウトバウンドHTTPSアクセスを確認してください。
  • 署名または認証エラー:キーが有効であり、バケットの一覧表示とユーザーが必要とする操作の実行が許可されていることを確認してください。リージョンがプロバイダの署名手順と一致していることを確認してください。アップロードは可能でも、バケットの一覧表示や検査ができない認証情報では、Nextcloud の接続テストに失敗する可能性があります。
  • エンドポイントまたはバケットが見つかりません。ホスト名に汎用エンドポイントが含まれていることを確認してください。バケットが既に含まれているURLが使用されていないことを確認してください。プロバイダにパス形式のリクエストが必要かどうかを確認し、必要であればそのオプションを切り替えて再度確認してください。
  • 接続は成功しますが、既存のオブジェクトが見つかりません。キーがバケットを一覧表示できること、およびオブジェクト名がサポートされているパスを使用していることを確認してください。Nextcloud は、などの繰り返し区切り文字を含む S3 キーPhotos//cat.pngとその内容が無視されることを警告します。
  • プロバイダで直接変更されたファイルが見つからない場合:マウントポイントの外部ストレージのスキャンを実行してください。ルーチン的な名前変更や移動は、可能な限り Nextcloud 内で行ってください。再スキャンでは、リモートでの名前変更が削除と新規ファイルの作成として解釈され、古いエントリに関連付けられた Nextcloud 側の共有、タグ、コメント、またはアクティビティ履歴が失われる可能性があります。

マウントが安全であることを確認してください

マウントの状態が緑色になるまで待ちます。許可されたスコープ内のユーザーとしてファイルを開き、マウントフォルダーを開き、一意の名前の小さなテストファイルをアップロードし、ダウンロードして、Nextcloud 経由で削除します。可能であれば、プロバイダーのバケットビューに期待されるオブジェクトが表示されることを確認します。グループアクセスが計画に含まれている場合にのみ、2 番目のユーザーでテストを実行します。最後に、選択したスコープ外のユーザーがマウントを見ることができないことを確認します。テストオブジェクトを削除し、最小限の権限の認証情報を保持します。

バージョン固有のフィールドの説明については、Nextcloud 35 Amazon S3 の設定およびNextcloud 35 外部ストレージ管理ガイドを参照してください。

コメントを残す

ストレージを壊さずにNextcloudデータを外部ドライブに移動する方法

ストレージを壊さずにNextcloudデータを外部ドライブに移動する方法

永続的なUUIDマウント、メンテナンスモード、検証済みコピー、および元のパスのシンボリックリンクを使用して、Linux Nextcloudのデータディレクトリを安全に外部ドライブに移動します。

Nextcloudのアップデート後に発生したデータベースエラー:最初に確認すべきこと

SQLエラーの診断、データベース接続の確認、中断された移行の安全な完了を行うことで、アップデート後にNextcloudへのアクセスを復元します。

OCCを使用してNextcloudの管理者パスワードをリセットする

NextcloudのOCCコマンドを使用して、サーバーシェルから管理者パスワードをリセットする方法を説明します。ユーザー名、権限、外部ログインプロバイダーに関するガイダンスも含まれています。

Nextcloudを提供するHTTPSエンドポイントにHSTSヘッダーを追加する

NextcloudのHSTS警告を解消するには、Apache、NGINX、またはTLSプロキシでヘッダーを設定し、公開HTTPS応答が安全に動作することを確認してください。

インターネット接続がないと報告されるNextcloudアプリのインストールに関するトラブルシューティング

インターネット接続がないと報告されるNextcloudアプリのインストールに関するトラブルシューティング

App Storeのインストール失敗の原因を、DNS、HTTPS、プロキシ、TLS、またはNextcloudサーバー自体の設定の問題に絞り込んでください。

スケジュールされたキューを使用して、NextcloudプレビューのCPUスパイクを抑制する

サムネイル作成作業を制御されたバックグラウンドスケジュールに移行し、使用されていないプレビューサイズをトリミングし、Nextcloudサーバーに過負荷をかけることなくキューを検証します。

Nextcloudデスクトップ同期で「ファイルの処理中」を解消しましょう

Nextcloudの同期を妨げているファイル、除外ルール、接続の問題、またはクライアントデータベースの状態を特定し、アップロードとダウンロードが安全に行われることを確認します。

適切な制限値を調整して、Nextcloud OPcache の警告を解消する

Nextcloudの警告を引き起こしているPHP OPcacheの制限値を特定し、適切なWeb PHP設定を更新し、安全に再起動して、結果を確認してください。

NextcloudをCODE Dockerに接続する:セットアップとトレードオフ

NextcloudをCODE Dockerに接続する:セットアップとトレードオフ

組み込みのCODEとDockerベースのCODEを比較し、安全なHTTPSリバースプロキシを介してCollabora OnlineをNextcloudに接続します。

Galeraを使用して、回復力の高いNextcloudクラスターを構築する

共有ストレージ、Redisロック、クォーラム対応MariaDBルーティング、および実用的なフェイルオーバーチェックを備えた、信頼性の高いNextcloud HAデプロイメントを計画します。