Giteaでユーザ登録時にメール認証を行う
Giteaを触っていて、設定ファイルのgitを見ているとユーザ登録時にメールを送信できるみたいです。
gmailを経由してメール送信する設定を行ったのですが、いろいろハマったのでメモしておきます。
Giteaは以前の記事で設定したものを使います。

pythonの勉強中なのですが、コードの管理にgithubを使っていましたが、無料プランでは非公開リポジトリを作成することはできません...
設定ファイルの編集
docker-compose.ymlファイルと同階層に"gitea"ディレクトリが作成されます。このディレクトリはGitea dockerにマウントされているので、dockerに接続せずに設定ファイルを編集できます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
[mailer] ENABLED = true ; Buffer length of channel, keep it as it is if you don't know what it is. SEND_BUFFER_LEN = 100 ; Name displayed in mail title SUBJECT = %(APP_NAME)s ; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used. HOST = smtp.gmail.com:587 ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <[email protected]>` format FROM = youraccount@gmail.com ; Mailer user name and password USER = youraccount@gmail.com ; Use PASSWD = `your password` for quoting if you use special characters in the password. PASSWD = yourpassword [service] REGISTER_EMAIL_CONFIRM = true |
app.iniファイルを変更して"docker-compose restart"コマンドでコンテナを再起動します。
Giteaにadminアカウントでログインして"http://IP/admin/config"に移動します。
"メーラーの構成"からテストメールを送信してください。
エラーが出た際は下記のハマったところを参照して下さい。
ユーザ登録時に、設定したメールアドレスに”あなたのアカウントを有効にしてください。”というメールが送信されれば設定完了です。
ハマったところ
Googleのサービスログイン時に2段階認証の設定をしていたため、メールが送信できませんでした。
→2段階認証を解除して対応。
Googleのアカウントサービスで安全性の低いアプリが無効化だとメール送信できません。
→安全性の低いアプリを有効化して対応。