2017年12月23日土曜日

VagrantでboltとMySQLをインストールした仮想マシン(Ubuntu16.04)を構築する

以下のVagrantfileを使用して、boltとMySQLがインストールされた仮想マシンを構築できます。

Vagrantfile
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "bento/ubuntu-16.04"
  config.vm.hostname = "ub1604bolt"
  config.vm.provider :virtualbox do |vbox|
     vbox.name = "ub1604bolt"
     vbox.cpus = 2
     vbox.memory = 2048
     vbox.customize ["modifyvm", :id, "--nicpromisc2","allow-all"]
  end
  config.vm.network "private_network", ip: "192.168.55.105", :netmask => "255.255.255.0"
  config.vm.network "public_network", ip:"192.168.1.105", :netmask => "255.255.255.0"
  config.vm.provision "shell", inline: <<-SHELL
# update packages
apt-get update
#DEBIAN_FRONTEND=noninteractive apt-get -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" upgrade
echo "mysql-server-5.7 mysql-server/root_password password root" | sudo debconf-set-selections
echo "mysql-server-5.7 mysql-server/root_password_again password root" | sudo debconf-set-selections
apt-get -y install mysql-server-5.7
mysql -uroot -proot -e "CREATE DATABASE bolt DEFAULT CHARACTER SET utf8;"
mysql -uroot -proot -e "CREATE USER bolt@localhost IDENTIFIED BY 'bolt';"
mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON bolt.* TO 'bolt'@'localhost';"
mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON bolt.* TO 'bolt'@'%';"
mysql -uroot -proot -e "FLUSH PRIVILEGES;"
apt-get -y install apache2 libapache2-mod-php7.0
apt-get -y install php7.0-gd php7.0-json php7.0-mysql php7.0-pdo php7.0-curl php7.0-mbstring
apt-get -y install php7.0-mcrypt php7.0-xml php7.0-zip php7.0-intl

# install bolt
wget  https://bolt.cm/distribution/bolt-latest.tar.gz
tar -xzf bolt-latest.tar.gz
cd bolt-v3.4.1
php app/nut init
sed -i -e 's/driver: sqlite/driver: mysql\\n    username: bolt\\n    password: bolt\\n/' ./app/config/config.yml
cd /home/vagrant
mv bolt-v3.4.1 /opt/bolt
chown -R www-data:www-data /opt/bolt

cat << EOF > /etc/apache2/sites-available/bolt.conf
<VirtualHost *:80>
    ServerName 192.168.55.105
    DocumentRoot /opt/bolt/public
    <Directory /opt/bolt/public>
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>
EOF
a2enmod rewrite
a2ensite bolt.conf
a2dissite 000-default.conf
systemctl reload apache2.service

echo 'access http://192.168.1.105/'
SHELL
end

〇boltの設定画面


〇boltの画面



○関連情報
・Boltに関する他の記事はこちらを参照してください。

0 件のコメント:

コメントを投稿