ITよろづや

ITの参考になる情報を備忘録代わりに残していきます

config/configuration.ymlでSMTPサーバの設定を行い、アプリケーションを再起動してください。Cent7、Redmine3

メールの設定をしたいと思ってredmineにログインして、「管理→設定→メール通知」をクリックしたら、以下のメッセージが表示されました。

メールを送信するために必要な設定が行われていないため、メール通知は利用できません。config/configuration.ymlでSMTPサーバの設定を行い、アプリケーションを再起動してください。


色々と調査をしていると、設定変更後に、redmineが再起動されていないとありましたが、まずは、メール設定自体がされていないのでは、、、という事で色々と調査をしました。


Redmineの情報って、色んなバージョンと環境で書かれているので、自分にマッチしない事ってよくあって、参考にならない場合が多い。。。


まず、有名なサイトを参考にしました。こちら。

>>プロジェクト管理ソフトウェアRedmine 日本語情報 (unofficial) - メール通知のためのconfiguration.ymlの設定


メール通知の設定を行うには、 config/configuration.yml に以下のような記述を追加するとあります。

 

Redmineと同一サーバ上のMTAを利用する場合
 
default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: localhost
      port: 25
      domain:local.localdomain

login認証を行なっているSMTPサーバ(mail.test.com)を使用する場合
default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: mail.test.com
      port: 25
      authentication: :login
      domain: mail.test.com
      user_name: user
      password: password

gmailSMTPサーバを利用する場合
default:
  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      enable_starttls_auto: true
      address: "smtp.gmail.com"
      port: 587
      domain: "smtp.gmail.com"
      authentication: :plain
      user_name: "user@gmail.com"
      password: "password"



ちなみに、CentOS7、Redmine3の環境では、この設定フィアルは、「var/lib/redmine/config」下に「config/configuration.yml」を作成します。最初は、config/configuration.ymlがありません。


config下にある「config/configuration.yml.example」をコピーします。


# cp config/configuration.yml.example configuration.yml

# vi configuration.yml


続いて、編集方法もこれまた、色々とあってはまりました。。。一番最後の行に追加してとかありましたが、私の場合は、そのままサンプルにあるものをコメント合うとして使ったらうまく設定できました。


設定は、ローカルのMTAを使うのか、別のメールサーバーを使うのか、Gmailを使うのかで変わってきます。正しく設定できれば、以下のメッセージがでなくなります。

メールを送信するために必要な設定が行われていないため、メール通知は利用できません。config/configuration.ymlでSMTPサーバの設定を行い、アプリケーションを再起動してください。


また、設定を反省させる為には、redmineの再起動が必要とありますが、httpdの再起動でもOKでした。これも色々と情報があって、錯乱しました。。。


色々と調査をしていると、設定変更後に、redmineが再起動されていないとあったので、まずヒットしたのが以下の方法。

Redmine配下のtmpディレクトリにrestart.txtという空のテキストファイルを置く
※私の環境では、「/var/lib/redmine/tmp」 
②cd redmine/tmp/
③touch restart.txt
④ブラウザでRedmineにアクセスする

※このあとにブラウザからRedmineでアクセスすると、少し時間がかかって接続できるようになるそうです。また、テキストファイルは削除されるとのこと。そもそも、txtってWindows?


そして、ブラウザでRedmineにアクセスして、どうやったら再起動になるのか不明で、設定も変わらず。


後、この方法もありました。

ctlscript.sh start



コマンドを実行したら、コマンドがないと言われたので、以下を実行しましたが、結局、見つからず。

find ~/ -name ctlscript.sh


 
うーんと悩んでいたのですが、 config/configuration.ymlでメール設定をして、httpdを再起動したところ、設定が反映されました。


ちなみに、 CentOS7からは、「systemctl restart httpd」でApacheを再起動するようですが、私の環境では、service httpd restartで再起動できました。


環境やバージョンによって、動作が全然、違うみたいなので、今回、結構はまりました。そのうち、自宅でredmine自体を導入して、インストール手順について言及したいと思います。これも、色々と情報がありすぎてはまりました。