Last active
December 2, 2021 11:25
-
-
Save yama/66a7e211d1238c580fab12d094babcf8 to your computer and use it in GitHub Desktop.
centos7用のVagrantfile
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# 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