[参考] http://yamacent.hatenablog.com/entry/2015/05/31/235900
1. Apacheを入れる 2. MySQLを入れる 3. ComposerとPHPを入れる 4. ApacheとMySQLをサービスとして立ち上げる
ディレクトリ構成
$ tree . ├── Vagrantfile └── provision ├── files │ ├── httpd.conf │ └── php_app.conf └── scripts ├── provision.sh └── provision_root.sh
Vagrantfile
# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(2) do |config| config.vm.box = "centos/7" config.vm.network "forwarded_port", guest: 80, host: 8080 config.vm.provision "file", source: "provision/files/httpd.conf", destination: "httpd.conf" config.vm.provision "file", source: "provision/files/php_app.conf", destination: "php_app.conf" config.vm.provision "shell", path: 'provision/scripts/provision_root.sh' config.vm.provision "shell", path: 'provision/scripts/provision.sh', privileged: false end
シェルスクリプト
provision/scripts/provision_root.sh
#!/bin/env bash sudo yum update -y sudo yum install -y vim sudo yum install -y openssl-devel # for Ruby # Apache sudo yum install -y httpd for i in /etc/httpd/conf.d/*; do sudo mv $i $i.bk; done mv httpd.conf /etc/httpd/conf/httpd.conf sudo mv php_app.conf /etc/httpd/conf.d/ # MySQL sudo yum localinstall -y http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm sudo yum install -y mariadb-server # Service sudo systemctl enable httpd sudo systemctl enable mariadb
## provision/scripts/provision.sh
# PHP sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm sudo yum -y install --enablerepo=remi,remi-php71 php php-devel php-mbstring php-mysqlnd php-pdo php-gd sudo systemctl restart httpd