オープンソースのマーケティングオートメーションツールであるMauticを、Macで手軽(?)に動かす手順です。
ローカルのOS環境とは独立させたいため、Vagrantを利用しました。
書いてみたら、全然手軽ではない内容になってしまいましたが、
もう少し簡単な使い始め方や、Mauticの使い方や内部構造も、今後、調べて書いていこうと思います。
Mauticとは
Mauticについては、公式サイトをご覧ください。以下の記事でも紹介されています。
環境
この記事の内容は以下の環境を前提に書かれています。
Windowsでも、ほぼ同じだと思いますのが、今後、試します。
設定などは最低限の内容を書いています。
本番で動かす場合はセキュリティなども考慮しましょう。
- Mac OS 10.11.5 El Capitan
- Vagrant 1.8.1
- Mautic 2.0.1
Vagrant
Vagrantをインストール
Vagrantをダウンロードしてインストールします。
$ vagrant
$ vagrant: command not found
いきなり、つまづきました。この問題のようです。
El Capitanにしてから、Terminalすら使ってなかった..。ひとまず、リンクで解決しました。
sudo ln -s /opt/vagrant/bin/vagrant /usr/bin/vagrant
Centos7のBoxをインストール
こちらからBOXを探します。
任意のディレクトリでインストールを進めます。
mkdir vagrant_centos7
cd ./vagrant_centos7
vagrant init centos/7
Vagrantfileというファイルが作成されますが、以下を変更しました。
まず、IPアドレスで接続できるように設定します。
config.vm.network "private_network", ip: "192.168.33.10"
続いて、ホストとVagrantのファイル共有をできるようにします。
以下で、Macの../dataとCentOSの/vagrant_dataが共有されます。
config.vm.synced_folder "../data", "/vagrant_data"
Vagrantで、CentOSのBOXを起動します。
vagrant up centos/7
CentoS7が起動します。
Apache/PHP/MySQL
Apacheをインストール
yumを更新
sudo yum -y update
apacheをインストール
sudo yum -y install httpd
apacheを起動します
sudo systemctl start httpd.service
OS起動時にApacheが自動起動するように設定する。
sudo systemctl enable httpd.service
ブラウザで、http://192.168.33.10/ を確認します。
PHPをインストール
Mautic 2.0.1はPHP 5.6.19以上で動作しますが、今回はPHP7を利用します。
EPELをインストールします。
yum install epel-release
Remiリポジトリを更新します。
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
必要なモジュールを一式インストールします。
(Mauticを動かした際にモジュール不足でエラーが表示されたら、追加でインストールしてください。)
yum install --enablerepo=remi,remi-php70 php php-devel php-mbstring php-pdo php-gd php-mysql php-mcrypt php-intl php-imap phpunit
/etc/php.ini
最低限としては以下を設定します。
date.timezone = "Asia/Tokyo"
MySQLをインストール
CentOS7では、MySQLではなく互換性のあるMariaDBが導入されています。
sudo yum install mariadb mariadb-server
/etc/my.cnf
character-set-server=utf8
起動します。
systemctl start mariadb.service
初回起動設定
systemctl enable mariadb.service
rootのパスワードを設定します。
mysql_secure_installation
接続を確認します。
mysql -u root -p【rootのパスワード】
Mautc用のユーザーを作成します。
CREATE USER 【ユーザー名】 IDENTIFIED BY '【パスワード】';
Mautic
Mauticをダウンロード
ソースをダウンロードします。
wget https://github.com/mautic/mautic/archive/master.zip
zipファイルを展開して、composerでインストールします。
その後、パーミションの変更を行います。
unzip master.zip
cd mautic-master/
composer install
chmod -R 775 ./app/cache
chmod -R 775 ./app/logs
chmod -R 775 ./app/config
mautic-masterdディレクトリを公開するディレクトリにコピーします。
例では、ドキュメントルート以下にmauticフォルダを作っています。
$mv ./mautic-master /var/www/html/mautic
ウェブで設定を行う
ここから先のmauticの設定はウェブブラウザから行います。
先ほど、配置したファイルが見れるディレクトリをブラウザで開きます。
http://hostname/mautic
データベースの接続設定、管理者アカウントの作成などを行います。
cronの設定を行います。
メール配信など定期実行する処理を設定します。
1分ごとにしていますが、お好みで変更してください。
apacheを動かしているユーザーのcronに設定します。
sudo -u apache crontab -e
設定の内容は以下です。
*/1 * * * * sudo -u apache /usr/bin/php /var/www/html/mautic/app/console mautic:segments:update
*/1 * * * * sudo -u apache /usr/bin/php /var/www/html/mautic/app/console mautic:campaigns:rebuild
*/1 * * * * sudo -u apache /usr/bin/php /var/www/html/mautic/app/console mautic:campaigns:trigger
全然手軽ではないですが、起動しましたか?
もう少し簡単に動かす方法も調べたいと思います。
また、今後、Mauticの使い方や内部構造も調べて書いていこうと思います。