ハマログ

株式会社イーツー・インフォの社員ブログ

VagrantとAnsibleで仮想環境のCentOS6.5にWordPress環境構築!WebサーバーはNginxですか?(後編)

遂に後編を書くときが来ました。
てるおです。

はいどーも!

やることはもう決まっています。
vagrant upした時のAnsibleのtaskの追加です。

以下追加したいタスク達です。
1. phpとmysqlのバージョンアップデート
2. sqlファイルインポート
3. sql文実行
4. wp-config変更

書いてみるとなかなか少ないです!!!

早速、作業していきます。

まず、rolesディレクトリにpatchというディレクトリを作ってみます。
この下にさらにtasks/main.ymlと、ディレクトリとファイルを作成します。
このmain.ymlに処理の内容を書いていきます…

書きました!↓

 

---
- name: Update php
sudo: yes
shell: |
yum -y remove php*
rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum -y --enablerepo=remi-php55 install php php-common php-cli php-pdo php-devel php-mysql php-xml php-fpm

- name: Update mysql
sudo: yes
shell: |
/etc/rc.d/init.d/mysqld stop
yum -y remove mysql-5.1.73-7.el6.x86_64
yum -y install http://dev.mysql.com/get/mysql-community-release-el6-5.noarch.rpm
yum-config-manager --disable mysql56-community
yum-config-manager --enable mysql55-community
yum -y install mysql-server

- name: Populate wordpress files
sudo: yes
shell: |
rm -rf /srv/wordpress
cp -a /vagrant/wordpress /srv/
chown -R nginx:nginx /srv/wordpress

- name: Configure DB user for wordpress
lineinfile: >
dest=/srv/wordpress/wp-config.php
regexp='DB_USER'
line='define('DB_USER', 'root');'

- name: Configure DB user password for wordpress
lineinfile: >
dest=/srv/wordpress/wp-config.php
regexp='DB_PASSWORD'
line='define('DB_PASSWORD', '');'

- name: Restart services
sudo: yes
shell: |
service mysqld restart
service php-fpm restart
service nginx restart

- name: Import sql to DB and cnfigure URL
sudo: yes
shell: |
mysql -u root wordpress < /vagrant/wordpress.sql
mysql -u root wordpress -e 'update wp_options set option_value = "http://192.168.33.10" where option_value = "https://teriyakiegg.com"';

Ansibleに精通している方にはツッコミ所満開かと思います。
「コマンドそのまま書いてるだけやん…」と…
せめてyumのところはAnsibleのモジュールを使おうと思ってたのですが、力尽きました。
lineinfileだけshellじゃなくて簡単に使えました。
とりあえず、上に書いたmain.ymlの内容でvagrant upして”http://192.168.33.10″にアクセスしたらブログのトップページがちゃんと表示されるようになったので、一旦これで満足して後編を終わっちゃおうと思います。
「main.ymlを綺麗に書きました!(番外編)」をいつか書けたらいいですね…

それでは!!!

Posted by てるお
twitter @teriyakiegg
site https://teriyakiegg.com

ansiblevagrantWordpressyml

  teruo   2017年1月11日


関連記事

Laravel ExcelでCSV出力したらSJISで出せなかったので自分で書きました

佐川急便か何かのシステムと連携するために、Shift_JISで出力したCSVを作…

redmine wiki の pdf を shell で download する

背景 あるプロジェクトで仕様をredmine wikiに書きました そのwiki…

CloudFormationで Instance Limit Exceeded エラー

はじめに CloudFormationでEC2インスタンスを作成する時に、Ins…


← 前の投稿

次の投稿 →