--
--

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Tag:

03
2016

PHP7.1開発用のVagrant環境構築

CATEGORYPHP
先日自宅鯖のリポジトリを整理した結果、GitHub垢にアップできそうなネタがあったので、せっかくなので動作用にPHP7.1のVagrant環境を作成してUP。
参考までにVagrantの設定は抜粋してこっちにも掲載しとく。アプリ環境構築まで入ったフル版はここ参照で。では以下設定。

Vagrantfile

Node.jsの時の使い回しなんで割愛。過去記事GitHub参照で。

playbook.yml

---
- hosts: default
vars:
remi_repository: http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
remi_repository_name: remi-php71
tasks:
- block:
- block:
- name: Install Remi repository
yum: name={{ remi_repository }}
- name: Install the latest version of yum-utils
yum: name=yum-utils state=latest
- name: Check PHP version
shell: yum info php | grep -e "Version\s*:\s*7\."
register: php_version
always_run: yes
changed_when: false
failed_when: false
- name: Enable Remi repository
shell: yum-config-manager --enable "{{ remi_repository_name }}"
when: php_version.stdout == ""
- name: Upgrade all packages
yum: name=* state=latest
- block:
- name: Install the latest version of PHP7
yum: name=php state=latest
- name: Install the latest version of php-pdo
yum: name=php-pdo state=latest
- name: Install the latest version of php-mysqlnd
yum: name=php-mysqlnd state=latest
- name: Install the latest version of php-mbstring
yum: name=php-mbstring state=latest
- name: Install the latest version of Apache
yum: name=httpd state=latest
- name: Install the latest version of MariaDB
yum: name=mariadb state=latest
- name: Install the latest version of MariaDB server
yum: name=mariadb-server state=latest
- block:
- name: Action to enable service mariadb
service: name=mariadb state=started enabled=yes
- name: Action to enable service Apache
service: name=httpd state=restarted enabled=yes
- block:
- name: Action to disable SELinux for Apache
selinux: state=permissive policy=targeted
- name: Action to enable service firewalld
service: name=firewalld state=started enabled=yes
- name: Open port for HTTP
firewalld: service=http permanent=true state=enabled
- name: Action to reload service firewalld
service: name=firewalld state=reloaded enabled=yes
become: true
やってること解説。
まず、CentOS7は2016年11月現在PHP7系じゃないので、最新バイナリを配布してるremiのCentOS7用リポジトリを登録。その中のPHP7.1を有効化。
次いでPHPとpdoやらの関連ライブラリ、Apache、MySQL (MariaDB) なんかをインストール。ここは好みに応じてお好きなように。
次いでApache, MariaDBとサービス系のものを有効化。
で、最後にSELinuxがVagrantのディレクトリ構成だと使い勝手悪いのでオフって、firewalldはポート80を公開。

httpd.conf

Apacheの設定はパスがアプリ次第だから上には含めなかったけど、こんな感じにVirtualHostを設定して、/etc/httpd/conf.d/vagrant-home.conf とかに突っ込むのが手っ取り早いと思う。これで共有フォルダに置いたファイルがそのまま参照できる。
<VirtualHost _default_:80>
DocumentRoot /vagrant

<Directory /vagrant>
Require all granted
</Directory>
</VirtualHost>


以上これだけ。使用イメージが分かんない場合は実アプリ落として試してみて。
なんかVagrantの設定というかAnsibleの設定のような気もしなくもないけど、これでお手軽にPHP7.1が体験できますってことで。
(注、PHP7.1は11/3現在まだRC5。でも↑の手順はyumなので正式版になれば勝手に上がるはず。)
スポンサーサイト

Tag: PHP Vagrant

0 Comments

Leave a comment

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。