Skip to content

Instantly share code, notes, and snippets.

@yama
Last active December 2, 2021 11:25
Show Gist options
  • Save yama/66a7e211d1238c580fab12d094babcf8 to your computer and use it in GitHub Desktop.
Save yama/66a7e211d1238c580fab12d094babcf8 to your computer and use it in GitHub Desktop.
centos7用のVagrantfile
# htdocsというフォルダをあらかじめ作っておいてください。
# 利用するIPアドレスを設定します
GUEST_IP = "192.168.33.10"
def install_plugin(plugin)
system "vagrant plugin install #{plugin}" unless Vagrant.has_plugin? plugin
end
install_plugin('vagrant-vbguest')
install_plugin('vagrant-hostmanager')
HOSTNAME = File.split(File.dirname(__FILE__))[1] + '.localhost'
Vagrant.configure(2) do |config|
config.vm.box = "bento/centos-7.8"
config.hostmanager.enabled = true
config.hostmanager.manage_host = true
config.vm.hostname = HOSTNAME
config.vbguest.auto_update = true
# config.vbguest.auto_update = false
config.vbguest.no_remote = true
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.synced_folder './htdocs', "/vagrant_data", type:'virtualbox',
:owner => "apache",
:group => "apache",
:create => true,
:mount_options => ['dmode=777','fmode=666']
config.vm.network "private_network", ip: GUEST_IP
config.vm.provision :hostmanager
config.vm.provision "shell", args:HOSTNAME, inline: <<-SHELL
sudo yum -y update
sudo yum -y update kernel
sudo yum -y install epel-release
sudo yum -y install kernel-devel kernel-headers dkms gcc gcc-c++
# sudo yum install update kernel kernel-devel
sudo yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# Webサーバーインストール
sudo yum -y install httpd
# PHP関連インストール
sudo yum -y install --enablerepo=remi-php74 php
sudo yum -y install --enablerepo=remi-php74 php-devel php-mysql php-pdo php-mbstring php-mcrypt php-xml php-gd
sudo yum -y install --enablerepo=remi-php74 php-pear
sudo yum -y install mariadb mariadb-server
sudo yum -y install zip
sudo yum -y install wget
sudo yum -y install git
sudo php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer
# 証明書作成
# sudo ssh-keygen -P "" -t rsa -b 4096 -f /root/.ssh/id_rsa
sudo yum -y reinstall glibc-common
localectl set-locale LANG=ja_JP.UTF-8
localectl set-keymap jp106
sudo yum -y reinstall glibc-common
localectl set-locale LANG=ja_JP.UTF-8
localectl set-keymap jp106
# 時刻設定
sudo timedatectl set-timezone Asia/Tokyo
# PHP設定
sudo sed -i -e 's|;mbstring.language = Japanese|mbstring.language = Japanese|' /etc/php.ini
sudo sed -i -e 's|;mbstring.internal_encoding =|mbstring.internal_encoding = UTF-8|' /etc/php.ini
sudo sed -i -e 's|upload_max_filesize = 2M|upload_max_filesize = 16M|' /etc/php.ini
sudo sed -i -e 's|;date.timezone =|date.timezone = Asia/Tokyo|' /etc/php.ini
# Apache 設定
sudo sed -i -e 's/AllowOverride None/AllowOverride All/g' /etc/httpd/conf/httpd.conf
sudo sed -i -e 's/ServerTokens Off/ServerTokens Prod/g' /etc/httpd/conf/httpd.conf
# sudo sed -i -e 's/User apache/User vagrant/g' /etc/httpd/conf/httpd.conf
# sudo sed -i -e 's/Group apache/Group vagrant/g' /etc/httpd/conf/httpd.conf
sudo sed -i -e 's/#ServerName www.example.com:80/ServerName localhost/g' /etc/httpd/conf/httpd.conf
sudo sed -i -e 's|var/www/html|vagrant_data|' /etc/httpd/conf/httpd.conf
sudo sed -i -e 's|SELINUX=enforcing|SELINUX=disabled|' /etc/sysconfig/selinux
sudo git clone https://github.com/baserproject/basercms.git /vagrant_data
sudo chown -R apache /vagrant_data/
# sudo chmod 777 /var/lib/php/opcache
# sudo chmod 777 /var/lib/php/session
# sudo chmod 777 /var/lib/php/wsdlcache
echo ${1} としてサイトを作成しました。
SHELL
config.vm.provision "shell", run: "always", inline: <<-COMMAND
sudo setenforce 0
sudo service httpd restart
sudo service mysql restart
COMMAND
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment