Gmail を使用した通知メール送信の開発入門

こんにちは。

私はRubyとDockerは初心者ですが、それ以外では開発経験があります。開発用のDiscourseインスタンスと本番用のインスタンスが稼働しているので、依存関係は満たされているようです。no-reply@discourse.example.comにOAuth 2.0機能を追加して、Google Workspaceユーザー経由で通知を送信できるようにしたいと考えています。

つきましては、以下の点についてご協力をお願いいたします。

  • DiscourseのgitリポジトリからDockerイメージを作成するにはどうすればよいですか?
  • no-replyのSMTP認証や通知送信に関するコードのどの部分に含まれていますか?

うまくいけば、./discourse-setupスクリプトで選択できるようにしたいと考えています。これにより、ほとんどのメールプロバイダーでwebmasterを提供でき、メールプロバイダーがGoogleの場合はOAuth 2.0を提供できます。お役に立てるようでしたら、結果を確認のために送付できます。

よろしくお願いいたします。

ここからお読みになることをお勧めします。

標準インストールを使用することを強く検討してください。

迅速なご対応ありがとうございます。./discourse-setup スクリプトを使用したいのですが、SMTP クライアントではなく OAuth クライアントとして Discourse をセットアップする必要があるため、まずソースに追加する必要があります。discourse_docker リポジトリで Discourse のソースを見つけることができません。Discourse のソースをどのように変更してから ./discourse-setup スクリプトを実行できますか? ./launcher を使用しないことをお勧めしない場合、その方向を追うことは問題ありません。

現在、Discourse と discourse_docker のリポジトリを持っています。

ローカルリポジトリをランチャー/discourse-setupスクリプトにプルするのではなく、アップストリームにプルするということでしょうか?

OAuth認証を使用したSMTP、または基本的な認証の代わりについてお尋ねですか?それとも、他の方法でメールを送信する方法をお探しですか?

DiscourseはSMTP OAuth認証をサポートしていないため、最も簡単なアプローチは、Discourseがローカルのメールサーバーにメールを送信するように設定し、そのメールサーバーが必要な認証情報を使用してメールを送信するように構成することでしょう。

Googleがサポートしているメカニズムは次のとおりのようです。

「いいね!」 1

つまり、私の場合はDiscourseがSMTPではなく、メールプロバイダーのOAuth 2に接続する必要があるということです。残念ながら、大手メールプロバイダーを使用しない場合、私のメールは迷惑メールに分類される可能性が高いことがわかりました。そのため、Discourseで使用されるno-replyアカウントにOAuth 2認証を追加し、Google Workspaceに接続することにしました。Mailgunも試しましたが、IMAPサポートも必要になります。

これを正しく表現すると、次のようになります。

DiscourseがSMTPサーバーに認証する際に、基本認証ではなくOAuth2認証を使用するようにしたい

これはユーザーの返信/受信メール用ですか?

これにはMailgunプラグインがあるようですが、私は使用したことがありません。

はい、それが望みです :slight_smile: 既にGoogle Workspaceを契約済みなので、最大限活用したいです。

Google Workspace はトランザクションメール用に設計されていません。他のものを使用する必要があります。

フォーラムでメールを受信したい場合は、Mail-Receiver を使用したセルフホストサイト向けの直接配信受信メールの設定 を参照してください。

通常、トランザクションメールサービスを設定して noreply@forum.example.com から送信し、メール受信者がそれに送信されたメールを受信して Discourse に引き渡すようにします。

ありがとうございます。今試してみます。

「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.