今回はWindows10でPHP開発でおなじみのLaravel環境を構築します。
VirtualBox、Homestead、Vagrant、Composer
これらを使用して環境を作成していきます。
必要なツールをインストール
前提条件として以下の3つのツールをインストールする必要があります。
Git for winodws
VirtualBox
vagrant
ちなみに今回、このページで環境構築した際の
それぞれのバージョンは以下になります。ご参考まで。
・OS:Windows10 Pro
・Git for winodws (2.30.0.2)
・VirtualBox(5.2.44)
・vagrant(2.2.5)
Homestead環境を作成する
まずはローカル環境にHomesteadの環境を作成していきます。
以下、手順です。
Git Bashを起動します。
Git Bashの起動方法は以下の通り。
windowsスタートメニュー -> Git -> Git Bash
起動したら以下を実行
$ vagrant box add laravel/homestead
「Enter your choice:」が表示されたら、3を入力してEnter
==> box: Loading metadata for box 'laravel/homestead' box: URL: https://vagrantcloud.com/laravel/homestead This box can work with multiple providers! The providers that it can work with are listed below. Please review the list and choose the provider you will be working with. 1) hyperv 2) parallels 3) virtualbox 4) vmware_desktop Enter your choice:
次にHomesteadとう名前のディレクトリにgitのhomesteadリポジトリを作成します。
以下を実行
$ git clone https://github.com/laravel/homestead.git Homestead
windows10の場合、
Gitのデフォルトホームディレクトリは「C:\Users\ユーザー\」なので
「C:\Users\ユーザー\Homestead」というディレクトリが作成されます。
作成したディレクトリへ移動します。
$ cd ./Homestead
初期化用のシェルを実行します。(Homesteadの設定ファイルなどが作成される)
$ ./init.sh
成功すると以下の文字列が表示されます。
Homestead initialized!
これでhomesteadのセットアップは完了です。
SSH用のカギを作成する
続いて、Git for WindowsのSSH作成機能を利用して
VMに入るためのSSH用の鍵を作成します。
鍵作成用のディレクトリを作成します。
$ mkdir ~/.ssh && cd $_
鍵作成用のコマンドを実行します。
$ ssh-keygen -b 4096
※4096は鍵長の長さ
デフォルトのKey名で問題ないければ何も入力せずにEnter
未入力の場合、デフォルトの「id_rsa」がKey名となる
Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/yoshi/.ssh/id_rsa):
任意のパスワードを入力してEnter
Enter passphrase (empty for no passphrase):
パスワードを再入力
Enter passphrase (empty for no passphrase):
成功すると以下のような文字列が表示されます。
Your identification has been saved in XXXXX Your public key has been saved in XXXXX.pub The key fingerprint is: SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX The key's randomart image is: +---[RSA 4096]----+ ・・・・・・・・・・ ・・・・・・・・・・ ・・・・・・・・・・ ・・・・・・・・・・ ・・・・・・・・・・ ・・・・・・・・・・ ・・・・・・・・・・ +----[SHA256]-----+
以下のフォルダに行き、鍵のファイルが作成されていることを確認してください。
「C:\Users\ユーザー\.ssh\」
・id_rsa
・id_rsa.pub
これでSSHの鍵作成完了です。
Homestead.yamlを編集する
Homesteadを正常に起動させるためには
開発環境にあわせてHomestead.yamlを編集する必要があります。
「C:\Users\ユーザー\Homestead\Homestead.yaml」をテキストエディタ等で開き
①~④の場所を確認・修正してください。
--- ip: "192.168.10.10" memory: 2048 cpus: 2 provider: virtualbox authorize: ~/.ssh/id_rsa.pub ←①鍵ファイルの格納場所、ファイル名を指定 keys: - ~/.ssh/id_rsa ←②鍵ファイルの格納場所、ファイル名を指定 folders: - map: C:\Users\ユーザ\Laravel ←③ローカルの開発ディレクトリを指定 to: /home/vagrant/code type: "nfs" ←④追加 sites: - map: homestead.test to: /home/vagrant/code/myapp/public ←⑤myappは後々の作業で作成するプロジェクト名 databases: - homestead features: - mariadb: false - ohmyzsh: false - webdriver: false # ports: # - send: 50000 # to: 5000 # - send: 7777 # to: 777 # protocol: udp
vagrantを起動する
いよいよvagrantの起動です。
git bashにてHomesteadのディレクトリへ移動し、以下のコマンドで起動します。
$ vagrant up
うまくいけば以下のように起動が始まります。
Bringing machine 'homestead' up with 'virtualbox' provider... ==> homestead: Checking if box 'laravel/homestead' version '10.1.1' is up to date... ==> homestead: Clearing any previously set network interfaces... ==> homestead: Preparing network interfaces based on configuration... homestead: Adapter 1: nat homestead: Adapter 2: hostonly ==> homestead: Forwarding ports... homestead: 80 (guest) => 8000 (host) (adapter 1) homestead: 443 (guest) => 44300 (host) (adapter 1) homestead: 3306 (guest) => 33060 (host) (adapter 1)
起動には数分かかります。
のんびり待ちましょう。
余談ですが、vagrant upでの起動時に
いくつかのエラーではまりまして。
解決方法をアップしています。
同じようにエラーとなってしまった場合は参考になるかもしれませんので
リンク張っておきます。
laravelのプロジェクトを作成する
仮想環境が立ち上がったら、
vagrant sshコマンドで仮想環境へログインします。
$ vagrant ssh
Welcome to Ubuntu 20.04.1 LTS (GNU/Linux 5.4.0-48-generic x86_64) _ _ _ | | | | | | | |__ ___ _ __ ___ ___ ___| |_ ___ __ _ __| | | '_ \ / _ \| '_ ` _ \ / _ \/ __| __/ _ \/ _` |/ _` | | | | | (_) | | | | | | __/\__ \ || __/ (_| | (_| | |_| |_|\___/|_| |_| |_|\___||___/\__\___|\__,_|\__,_| * Homestead v10.17.0, v11.4.0 * Settler v9.7.2 (Ubuntu 18.04) * Settler v10.1.1 (Ubuntu 20.04) 0 updates can be installed immediately. 0 of these updates are security updates. Last login: Sat Jan 16 07:00:28 2021 from 10.0.2.2 vagrant@homestead:~$
無事にログインできました。
続いて、laravelのプロジェクトを作成します。
cdコマンドでcodeディレクトリへ移動後、composer create-projectを実行します。
vagrant@homestead:~$ cd code/ vagrant@homestead:~/code$ composer create-project --prefer-dist laravel/laravel myapp
数十秒で作成完了です。
これでプロジェクトが作成されました。
もし、Could not deleteのエラーが発生してしまったら
こちらのページを参考にしてみてください。
IPアドレス転送設定を行う
続いてIPアドレスの転送設定を行います。
windowsの場合、hostsファイルを編集することで設定可能です。
hostsファイルは以下にあります。
「C:\Windows\System32\drivers\etc\hosts」
hostsファイルをテキストエディタ等で開き、
以下を追加します。
192.168.10.10 homestead.test
IPアドレス、ホスト名ともに、Homestead.yamlで設定した値を設定してください。
ちなみにhostsファイルの編集は管理者権限が必要になります。
管理者権限での編集方法がわからない場合は、googleで調べればすぐ見つかると思います。
デフォルトページを表示してみる
これですべての準備が完了しました。
ブラウザでデフォルトページを表示させてみましょう。
任意のWEBブラウザのURLに「homestead.test」と入力しEnter
以上!
コメント