Laravelをubuntu 20 LTSをVagrant開発環境で作る話
やっはろー
今回はLaravelの開発環境を Vagrantでubuntu 20で作った話です…
分かる人にしか分からない次元になってきましたねw
まずは、シンプルに出来上がりバージョンを…
$ php artisan --version
Laravel Framework 8.15.0
$ php -v
PHP 7.4.3 (cli) (built: Oct 6 2020 15:47:56) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies
$ cat /etc/os-release
NAME="Ubuntu"
VERSION="20.04.1 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.1 LTS"
VERSION_ID="20.04"
$ vagrant version
Installed Version: 2.2.14
激烈最新ですw
作り方は… try&errorでしょう。試行錯誤しました!
Vagrantfileを出しますとこんな感じ
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.network "forwarded_port", guest: 80, host: 8080
# VBOXの共有ディレクトリ
config.vm.synced_folder ".", "/vagrant", type: "virtualbox"
config.vm.provision "shell", inline: <<-SHELL
cd /vagrant
apt-get -qq update
apt-get -y -qq upgrade
apt-get -y -qq install npm apache2 php php-fpm unzip mcrypt php-fpm php-common php-mbstring php-xmlrpc php-gd php-xml php-mysql php-cli php-zip php-curl php-imagick php-phpdbg git curl
php -v
curl --silent https://getcomposer.org/composer-stable.phar -o /usr/local/bin/composer
chmod +x /usr/local/bin/composer
su - vagrant -c composer -V
test ! -f .env; cp vagrant-config/.env .env
su vagrant -c 'composer update'
su vagrant -c 'php artisan key:generate'
su vagrant -c 'npm install'
chmod -R 777 ./storage
chmod -R 777 ./vendor
chmod -R 777 ./node_modules
cp -f /vagrant/vagrant-config/apache2/000-default.conf /etc/apache2/sites-available/000-default.conf
apache2ctl configtest
service apache2 restart
SHELL
end
見たとおり、シンプル系です。
難しかったところは… まず、20LTSでないと最新のphp 7.4ではなかったので、18LTSなら7.0位でlaravelが7.3以上必須!だめだめぷんぷんって怒られて大変でした。
試行錯誤の末ですが、
su vagrant -c 'composer update'
が少しトリッキーですね。作成されるファイルがroot権限になっちゃったりしてめんどくさかったです
うん、こんな感じ
あとは、storageの権限を付与しないとLaravelアクセスで落ちますw
chmod -R 777 ./storage
Exceptionページになっちゃうから泣きそうでしたw
npm関係はもう少し調整が必要ですかね。
su vagrant -c 'npm install'
まだ、ERRが出ます… 初期状態なのにw
今回は、ご紹介までに、Laravel開発環境作ったどぉ〜の話でした
以上.