Vagrant 上の CentOS6.7 で mailcatcher を使う
環境
- vagrant
- CentOS 6.7
- ruby 2.4.3
- (CakePHP2.10)
やりたいこと
ローカルの環境からメールのテスト送信をしたい。mailcatcher だと便利だよ!と言われたので入れてみます。
手順
1. インストール
ruby は既に入ってます。
$ gem install mailcatcher
途中で一回怒られました。
.
.
Building native extensions. This could take a while...
ERROR: Error installing mailcatcher:
ERROR: Failed to build gem native extension.
.
.
.
checking for sqlite3.h... no
sqlite3.h is missing. Try 'brew install sqlite3',
'yum install sqlite-devel' or 'apt-get install libsqlite3-dev'
.
.
なんか足りないっぽいので、言われたとおりに不足してるのを入れてあげる。
$ sudo yum install sqlite-devel
すると、今度は成功。
Done installing documentation for sqlite3, daemons, thin, skinny, mailcatcher after 2 seconds
5 gems installed
2. 起動
$ mailcatcher
Starting MailCatcher
==> smtp://127.0.0.1:1025
/home/vagrant/.rbenv/versions/2.4.3/lib/ruby/gems/2.4.0/gems/thin-1.5.1/lib/thin/server.rb:104: warning: constant ::Fixnum is deprecated
==> http://127.0.0.1:1080
*** MailCatcher runs as a daemon by default. Go to the web interface to quit.
3. ブラウザで確認
んで、メール受信画面をブラウザで見ようと思って、はたと気がついた。
これ……Vagrant上じゃん……?
http://127.0.0.1:1080
って書いてあるけど、このURLで見られるわけないじゃん……?
ためしにvagrantに割り振ってある 192.168.33.40:1080 にアクセスしてみるも、見られない。
調べて見ると、ポートを指定して mailcatcher を起動するやり方があるらしい。ので、それをやろうと思ったら。
$ mailcatcher --http-ip 192.168.33.40
Starting MailCatcher
~~> ERROR: Something's using port 1025. Are you already running MailCatcher?
==> smtp://127.0.0.1:1025
==> http://192.168.33.40:1080
既に1025ポート使われてるんですけど、って怒られた。うん、知ってた。
一回 mailcatcher 落とそうと思ったら、どうやらPID調べて kill しないといけないらしい……?
ので、とりあえずPID調べてkillする。
$ netstat -tulpn | grep :1025
$ kill -9 6253
そして、今度はIPアドレスを指定して起動。
$ mailcatcher --http-ip=192.168.33.40
ブラウザでアクセスしてみます。
http://192.168.33.40:1080
出来たー!
ついで:メール送信の設定
CekePHP2.10の場合、メール設定はこんな感じ。
ポートを1025に指定したら良いようです。
class EmailConfig
{
public $mailcatcher = array(
'transport' => 'Smtp',
'from' => '[email protected]',
'host' => '127.0.0.1',
'port' => 1025,
'timeout' => 30,
'client' => null,
'log' => true,
'charset' => 'utf-8',
'headerCharset' => 'utf-8',
'template' => 'default',
'layout' => 'default',
);
}
参考
Author And Source
この問題について(Vagrant 上の CentOS6.7 で mailcatcher を使う), 我々は、より多くの情報をここで見つけました https://qiita.com/binthec/items/40772549b5cd1af4caf1著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .