MENU

Difyメール送信設定ガイド:Gmail/Google Workspace SMTPとアプリパスワードを利用する方法

当ページのリンクには広告が含まれています。

Difyコミュニティ版をチームで利用する際、新しいメンバーを招待したり、パスワードリセットを行ったりするためには、メール送信機能の設定が必要です。

DifyはSendGridやResendといったメール送信サービスに対応していますが、ここでは**普段利用しているGmailアカウント(またはGoogle Workspaceアカウント)**をSMTPサーバーとして利用し、Difyからメールを送信できるようにする設定手順を解説します。比較的簡単に設定でき、追加のサービス登録も不要です。

この記事で解説すること:

  1. Googleアカウント側での準備(2段階認証とアプリパスワードの生成)
  2. Dify側での環境変数設定(.env ファイルの編集)
  3. 設定の反映(Difyコンテナの再起動)

前提条件:

  • Difyコミュニティ版がDocker Composeでデプロイされ、正常に動作していること。
  • メール送信用に使用するGoogleアカウント(標準Gmail または Google Workspace)を持っていること。
  • 基本的なLinuxコマンド(cd, vi/nano, docker compose down, up -d)の知識があること。
  • 作業はDifyのソースコードをクローンしたディレクトリ内の docker サブディレクトリで行います (cd dify/docker)。
目次

ステップ1: Googleアカウント側での準備 (2段階認証とアプリパスワード生成)

Gmail (または Google WorkspaceのGmail) のSMTPサーバーを外部アプリケーション(Dify)から安全に利用するには、通常のGoogleアカウントパスワードではなく、「アプリパスワード」を使用する必要があります。アプリパスワードを生成するためには、まずGoogleアカウントで2段階認証プロセスが有効になっている必要があります。

【Google Workspace ユーザー向けの注意点】
管理者の設定: Google Workspaceの管理者が、組織全体または特定のユーザーに対して2段階認証プロセスを無効にしていたり、アプリパスワードの使用を禁止している場合があります。以下の手順を進める前に、ご自身の組織のポリシーを確認するか、管理者に問い合わせてください。これらの機能が利用できない場合、このガイドの方法は使用できません。

1.1: 2段階認証プロセスを有効にする (未設定の場合)

  1. Googleアカウント (https://myaccount.google.com/) にログインします。
  2. 左側のメニューから「セキュリティ」を選択します。
  3. 「Google へのログイン」セクションにある「2段階認証プロセス」をクリックし、画面の指示に従って設定を完了させます。

1.2: アプリパスワードを生成する

  1. 2段階認証プロセスを設定した同じ「セキュリティ」ページに戻ります。
  2. 「Google へのログイン」セクションの「2段階認証プロセス」を再度クリックします。(認証が求められる場合があります)
  3. ページの下部にある「アプリパスワード」をクリックします。(Google Workspaceで管理者によって禁止されている場合、この項目が表示されないか、選択できません
  4. 「アプリを選択」で「その他(名前を入力)」を選びます。
  5. アプリ名に分かりやすい名前(例: Dify Mail)を入力し、「生成」ボタンをクリックします。
  6. 黄色の背景に16桁のアプリパスワードが表示されます。このパスワードはこの画面でしか表示されません。必ずコピーして、安全な場所にメモしておいてください。Googleアカウントの通常のパスワードとは異なります。
  7. 「完了」をクリックします。

これでGoogleアカウント側の準備は完了です。

ステップ2: Dify側での環境変数設定 (.env ファイル)

次に、DifyのDocker環境に、Gmail (または Google WorkspaceのGmail) のSMTPサーバー情報と生成したアプリパスワードを設定します。通常、これらの設定は dify/docker ディレクトリにある .env ファイルで行います。

1..env ファイルを開く: dify/docker ディレクトリにある .env ファイルをテキストエディタで開きます。(存在しない場合は cp .env.example .env で作成) cd dify/docker vi .env # または nano .env

2.メール関連の環境変数を追記または編集: ファイル内にメール関連の設定項目があれば編集し、なければ以下の内容をファイルの末尾などに追記します。メールアドレスはご自身のGmailまたはGoogle Workspaceのアドレスに置き換えてください。

# --- Mail Settings --- 
# Set mail type, smtp or resend 
MAIL_TYPE=smtp 
# Set your default email address for sending emails when using SMTP 
MAIL_DEFAULT_SEND_FROM=your_account@gmail.com # ★ご自身のGmailアドレス or Google Workspaceアドレスに変更 

# --- SMTP Settings --- 
# Configure the following settings if MAIL_TYPE is set to smtp 
SMTP_SERVER=smtp.gmail.com 
SMTP_PORT=587 
SMTP_USERNAME=your_account@gmail.com # ★ご自身のGmailアドレス or Google Workspaceアドレスに変更 
SMTP_PASSWORD=xxxxxxxxxxxxxxxx # ★ステップ1で生成した16桁のアプリパスワードに変更 (スペース無し) 
SMTP_USE_TLS=true # SMTP_USE_SSL=false 
# 通常はTLSを使用するためfalseのまま or コメントアウト

【重要】設定項目の解説:

  • MAIL_TYPE: 必ず 'smtp' を指定します。 'resend' などにしないよう注意してください。
  • MAIL_DEFAULT_SEND_FROM: Difyから送信されるメールの「送信元」として表示されるアドレス。ご自身のGmailまたはGoogle Workspaceアドレスを指定します。
  • SMTP_SERVER: 'smtp.gmail.com' を指定します。(Google Workspaceでも共通です
  • SMTP_PORT: '587' を指定します (TLS接続用の標準ポート)。
  • SMTP_USERNAME: ご自身のGmailまたはGoogle Workspaceアドレスを指定します。
  • SMTP_PASSWORD: ステップ1で生成した16桁のアプリパスワードスペースを含めずに入力します。Googleアカウントの通常のパスワードではありません。
  • SMTP_USE_TLS: 'true' を指定し、暗号化通信を有効にします。

3.ファイルを保存: 編集内容を保存してエディタを終了します (vi なら Esc -> :wq)。

    ステップ3: Difyコンテナの再起動

    環境変数の変更をDifyに反映させるために、Docker Composeを使ってコンテナを再起動する必要があります。

    # dify/docker ディレクトリで実行
    
    # 1. 現在のコンテナを停止・削除
    sudo docker compose down
    
    # 2. 新しい設定でコンテナを起動
    sudo docker compose up -d
    
    • sudo が不要な場合(Dockerグループに所属している場合)は、sudo を付けずに実行してください。

    再起動が完了すれば、DifyからGmail/Google Workspace経由でメールが送信されるようになります。

    ステップ4: テスト (任意だが推奨)

    設定が正しく行われたかを確認するために、実際にメールが送信される機能を試してみることをお勧めします。

    • メンバー招待: Difyの「設定」>「メンバー」から、テスト用のメールアドレス宛に新しいメンバーを招待してみます。招待メールが届けば成功です。
    • パスワードリセット: ログイン画面で「パスワードをお忘れですか?」を試し、パスワードリセット用のメールが届くか確認します。

    もしメールが届かない場合は、以下の点を確認してください。

    • .env ファイルの各設定値(特に MAIL_TYPE, SMTP_PASSWORD, SMTP_USERNAME)に誤りがないか?
    • アプリパスワードは正しくコピー&ペーストされているか?(スペースなどが入っていないか?)
    • Googleアカウントの2段階認証は有効になっているか?(Workspaceの場合、管理者に許可されているか?)
    • docker compose downup -d でコンテナを正しく再起動したか?
    • 送信先のメールアドレスで迷惑メールフォルダに入っていないか?
    • Google Workspaceの場合: 管理コンソールでSMTPリレーの設定などが影響していないか確認(通常、アプリパスワード方式では不要ですが、組織のポリシーによる場合があります)。

    まとめ

    これで、Difyコミュニティ版でGmailまたはGoogle WorkspaceのSMTPサーバーを利用してメールを送信できるようになりました。

    • Googleアカウント側: 2段階認証を有効にし、アプリパスワードを生成する(Workspaceは管理者の許可が必要な場合あり)。
    • Dify側: .env ファイルに MAIL_TYPE=smtp を含むSMTP設定と、生成したアプリパスワードを記述する。
    • 反映: docker compose down & up -d で再起動する。

    これにより、メンバー招待などの機能が利用可能になり、チームでのDify活用がよりスムーズになります。

    【推奨】業務システム化に有効なアイテム

    生成AIを学ぶ

    システム化のパートナー(ミラーマスター合同会社)

    VPSサーバの選定

    よかったらシェアしてね!
    • URLをコピーしました!
    • URLをコピーしました!

    コメント

    コメントする

    目次