s3での問題:シークレットアクセスキーが見つからないため、169.254.169.254へのTCP接続を開けませんでした

これは標準的なインストールです。これらの認証情報は古いサーバーでも機能し、s3cmd を使用して新しいサーバーでも機能しますが、バックアップのリストを取得しようとして discourse restore を実行すると、次のエラーが発生します。

Error retrieving instance profile credentials: Failed to open TCP connection to 169.254.169.254:80 (execution expired)

これは本物の AWS バケットです。Discourse に問題があるとは考えにくいですが、他に思いつくことも理にかなっていません。

これは、Ubuntu 24.04 を使用して新しいサーバーに移行しようとしている、おそらく最初のセルフホスト型フォーラムの 1 つに関するものです。

AWSクライアントは、インスタンスプロファイル認証情報を取得するために、EC2メタデータサービスに接続しようとしています。

それが機能した場合、これらの認証情報を使用してバケットに接続しようとします。

しかし、メタデータサービスに接続できません。まだバケットへの接続を試みておらず、それより前に失敗しています。

これはAWS上でのことですか?そうでない場合、メタデータサービスと通信できない理由がわかります。

新しいインストールでは認証情報が認識されないため、AWS SDKはそれらを取得するためにメタデータサービスに接続しようとしています。

「いいね!」 1

OMG。気が狂うかと思いました。

DISCOURSE_S3_SECRET_ACCESS=xxx

ではなく

DISCOURSE_S3_SECRET_ACCESS_KEY=xxx

を持っていました。

「いいね!」 4

このトピックは、最後の返信から30日後に自動的にクローズされました。新しい返信は許可されていません。