Laravel6をVagrant/VirtualBox/Homesteadの環境で構築する

Laravel6をVagrant/VirtualBox/Homesteadの環境で構築するHomestead
Laravel6をVagrant/VirtualBox/Homesteadの環境で構築する

こんにちは。宍戸です。

Laravel6がリリースされましたが、今回はVagrant/VirtualBox/Homesteadの組み合わせで環境を構築します。
Laravel5のHomestead環境は何回も作ってるのですが、Laravel6が出たのでこれを機会に構築手順をまとめていこうと思います。

動画でみる

構築手順の動画を作成しました。動画で見たい方はどうぞ。
初作成なので、ちょっと文字とか見づらいです。。。

環境

開発環境は、以下の通り。
VirtualBoxとVagrantの組み合わせの環境でHomesteadを使って構築していきます。

  • Vagrant 2.2.6
  • VirtualBox 6.0.14
  • Homestead

Homesteadの環境構築

boxのダウンロード

下記コマンドでboxファイルのダウンロードを行います。

vagrant box add laravel/homestead

homesteadファイルの取得

GitHubからファイルをCloneしてきます。

git clone https://github.com/laravel/homestead.git [clone先フォルダ]

homestead.ymlの生成

bash init.sh

homestead.ymlの編集

---
ip: "192.168.10.10"
memory: 2048
cpus: 2
provider: virtualbox

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: host側のフォルダ
      to: vagrant上のフォルダ

sites:
    - map: テスト用ドメイン名
      to: ドキュメントルート

databases:
    - homestead

features:
    - mariadb: false
    - ohmyzsh: false
    - webdriver: false

# ports:
#     - send: 50000
#       to: 5000
#     - send: 7777
#       to: 777
#       protocol: udp

homesteadの起動

vagrant up

host側のhostsファイルの設定

hostsファイルの編集

sudo vim /etc/hosts

hostsファイルに下記を追加

192.168.10.10    テスト用ドメイン名

Laravelのインストール

Vagrantへログイン

下記でvagrantにログインする

vagrant ssh

Laravelのプロジェクト作成

インストールしたいフォルダに移動し、下記を実行
※最後にドットを入れると、今いるフォルダにLaravelがインストールされる

composer create-project --prefer-dist laravel/laravel .

.envの修正

.envファイルにDBの設定などを記載

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:0Jy7cBSOUvHuvgDdPLGdB2zvPPBypsKZIEuqnuEkj2s=
APP_DEBUG=true
APP_URL=http://テスト用ドメイン

LOG_CHANNEL=stack

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=root
DB_PASSWORD=secret

BROADCAST_DRIVER=log
CACHE_DRIVER=file
QUEUE_CONNECTION=sync
SESSION_DRIVER=file
SESSION_LIFETIME=120

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_DRIVER=smtp
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

これで、テスト用のドメインにアクセスしてLaravelのHome画面が出ればOK

タイトルとURLをコピーしました