Debian/Ubuntu専用。Ubuntuでは試していない。specもない。
Itamaeで一気にnginxとphp5-fpmとMySQLとWordPressをインストールする。conf類をがっつり置き換えるのでクリーンな環境で実行すると良い。
nodes/node.jsonを望みの感じに書き換えて(パスワードとか絶対に変えてほしい)以下を実行するとよくなりそう。
$ bundle exec install --path vendor/bundle $ bundle exec itamae ssh -h hostname -j nodes/node.json recipes/init_server.rb $ bundle exec itamae ssh -h hostname -j nodes/node.json recipes/wordpress.rb
init_server.rb
でrootログインの無効化とかパスワードログインの無効化とかしてるので事前に公開鍵をssh-copy-id
とか使って転送しておくと吉。
以下ファイルの構成。
├── Gemfile ├── Gemfile.lock ├── README.md ├── Vagrantfile ├── files (転送するファイル類) │ ├── nginx │ │ └── nginx.conf (/etc/nginx/nginx.confを置き換える) │ └── php │ ├── ssh2.ini (WordPressのアップデートいい感じにできるようにする) │ └── www.conf ├── nodes (設定用ファイル) │ └── node.json (MySQLのパスワードとかサーバのFQDNとかここで指定しておく) ├── recipes (レシピ群) │ ├── init_server.rb (ファイアウォール入れたりするやつ) │ ├── mysql.rb (MySQLインストールするやつ) │ ├── nginx.rb (nginxインストールするやつ) │ ├── php5-fpm.rb (phpインストールするやつ) │ └── wordpress.rb (これ1つでmysql, nginx, php5-fpmもインストールする) └── templates ├── nginx │ ├── global │ │ ├── restrictions.conf.erb (robots.txtはaccess log書かないみたいな指定) │ │ └── wordpress.conf.erb (WordPress用のnginxコンフィグ本体) │ └── server.conf.erb (WordPress用nginxコンフィグ、上2つを読み込んでる) └── wordpress └── wp-config.php.erb (WordPressのコンフィグテンプレート)