はじめに

フレームワークから学ぶプログラミングPart 2

 

前回はVagrantとVirtualBoxのインストールが主でしたが、今回はターミナルを使ったインストールになっていきます。

エディタはVisual Studio Codeを使っていきます。
他にもviを使った編集場面も出てくるかもしれませんが、操作方法などはその都度説明を入れていきますのでご安心ください。

では早速はじめていきましょう。🎶

homesteadをVirtualBoxにインストールしましょう

説明がうまく伝わるか心配ですが、VirtualBoxの中に仮想マシンとしてhomesteadを詰め込んで、その中にlaravelのファイル群を展開して仮想マシンを現実のサーバーのサイトのようにブラウザに表示しながら開発を進めるというのが狙いです。

VirtualBoxという仮想環境の受け皿になるアプリにVagrantという操作を行うプログラムを利用して
Homesteadという多くのライブラリを詰め込んだ仮想環境をVirtualBoxにぶち込んで使うというような感じです。

では以下のコマンドをターミナルやコマンドプロンプトで実行します。

お使いのコンピュータやWi-Fiなどのネットワーク環境に依存しますが

vagrant box add laravel/homestead

1) parallelsと2)virtualboxのどちらかを選択するアナウンスが表示されますので、virtualboxの2を選択します。
つまり数字の2を入れてリターンもしくはエンターキーを押してください。

およそ3分程度でVirtualBoxへ入れ込みましたよって返ってきました。

お使いのコンピュータのメモリや処理能力によっては30分以上かかるかもしれませんが、気長に待ってやってください。

完了画面はこんな感じです。

では早速Vagrantのboxにちゃんと入っているか確認してみましょう。
以下のコマンドをコピペしてください。

vagrant box list

以下のようにリストの中に表示されていれば成功です。🎶

Homesteadの初期設定をしよう

コマンドで注意点です。先ほどつくったhomesteadは仮想マシンに入っていますが、実体をご自身のパソコンに作って、実際の操作はそこで行うようにします。

イメージが難しく感じるかもしれませんが、例えていうならばレンタルサーバーにhomesteadを入れた状態がここまでの流れで、今度はそのサーバーを操作するためのディレクトリを自分のコンピュータに複製してレンタルサーバーを操作するといった例えです。

使っていくうちにイメージが顕在化すると思いますので、ご安心ください。

Homesteadディレクトリは自動生成されます。
この中にはVagrantfileやディレクトリの初期化などに利用するinit.shなどが含まれています。

次のコマンドを実行しましょう。

git clone https://github.com/laravel/homestead.git ~/Homestead

このコマンドによってHomesteadディレクトリが生成されます。
できているか確認のためlsコマンドで中身を確認してください。

後ほど説明しますが、Homestead.yamlファイルの内容を変更することでご自身のコンピュータに合った仮想環境を作ることができます。

次はHomesteadを初期化しておきます。
その前に自動生成されたHomesteadディレクトリに移動してください。

cd Homestead

移動が完了したら、以下のコマンドを実行してください。

bash init.sh

これでaliases, after.sh, Homestead.yamlが生成されます。

sshを使うためにKeyの作成をしよう

vagrant sshでvagrantを操作するためにはご自身のコンピュータで生成する秘密鍵と公開鍵が必要になります。
sshというのはセキュアシェルの略で仮想環境がレンタルサーバーの例えとしてお話ししたように外部からの攻撃や侵入に対処するための手段の一つだと思ってください。

ssh-keygen -t rsa

生成過程で最初に Enter file in which to save the key (/Users/chockey/.ssh/id_rsa):
この問合せについては特別な記入は必要ないのでリターンもしくはエンターキーで進んでください。

生成過程でEnter passphrase(empty for no psddphrase)と問い合わせがあります。
パスフレーズはパスワードのようなもので、そのままリターンまたはエンターキーを押せばパスフレーズなしで生成されますが、セキュリティー的にも記入をしたいものです。
確認のため同じパスフレーズ2度記入の必要があります。

生成されたキーそのものは覚える必要はないですが、パスフレーズを忘れないようにメモしてください。

Homestead.yamlファイルの設定をしよう

このファイルでは仮想マシンの設定とlaravelをインストールするためのディレクトリの設定をします。
特別に変更する点は少ないですが、ひとまずデフォルトの設定画面をVScodeで見てみましょう。

ip:は仮装マシンのアドレスになります。

hostsファイルに記載する必要がありますので、メモしておいてください。

memory:とcpus:は仮想マシンに割り当てられるリソースになります。

provider:は仮想化ソフトの指定になります。 VirtualBoxを利用するのでこの記載になってますが、VMWareも利用可能です。

authorize:とkeys:はsshキーの格納されたパスを表示しています。

folders:はご自身のコンピュータと仮想化マシンのディレクトリを紐付ける設定になります。

sites:はブラウザで表示するためのURLになります。

codeディレクトリの作成とhostsファイルの追加をしましょう。

カレントディレクトリ(現在作業しているディレクトリ)に戻りましょう。
以下のコマンドをターミナルで実行します。

cd

これでユーザーディレクトリの直下に戻りましたので、codoディレクトリを作ります。
以下のコマンドを実行してください。

mkdir chmod 755 code

これでcodeディレクトリが直下に作成されています。

次はhostsファイルにHomestead.yamlファイルに設定されているIPとドメインを記述していきます。

ひとまずご自身のコンピュータのhostsファイルがどのような状態かを確認してみましょう。
以下のコマンドをターミナルで時効してください。

cat /etc/hosts

catコマンドはターミナルでファイルの中身を表示してくれます。
筆者の場合は以下のように表示されています。

慣れない方や初めての方は若干扱い方に戸惑うかもしれませんが、viエディタを使ってhostsファイルに記述していきましょう。
以下のコマンドを実行してください。

sudo vi /etc/hosts

途中パスワードを求められますが、お使いのコンピュータのログインパスワードを記入してエンターキーを押してください。
記入時は打った文字が表示されませんが、問題はありません。
sudoコマンドは一時的に管理者権限を得るコマンドです。 

実行すると下の画面のような表示に切り替わっているのがターミナルで見えます。

この状態で英数半角小文字でiと打つと文字をインサートできる状態になります。

カーソルをキーボードの🔽キーで最初の記載してある127.0.0.1 localhostの1まで下げてリターンキーで改行します。

次は🔼を押して空白行に移動します。
筆者のHomestead.yamlのip:は192.168.56.56でしたので、”192.168.56.56 homestead.test”と記載しました。
ipアドレスは各自で違うかもしれませんので、homestead.yamlを参考に間違いのないように記載してください。

記載が完了したらその状態でキーボードのescキーを押します。

押したら:wq(コロン ダブリュー キュー)とキーボードで打ち込んでリターンキーを押します。
これで記入した文字がhostsファイルに書き込まれます。

もう一度catコマンドで/etc/hostsファイルを確認してみてください。
以下のように記載が反映されていたら成功です。

これで仮想マシンの起動準備は完了しましたが、vagrant upコマンドを実行する前にHomesteadディレクトリに移動します。
以下のターミナルでコマンドを実行してください。

cd Homestead

カレントディレクトリをHomesteadに移動しましたら、以下の注意書きを読まれた後にその下のコマンドを実行しましょう。

注意点ですが、Homestead.yamlファイルはVSCodeで変更を保存しても仮想マシンに反映されません。

もしも、Homestead.yamlファイルのsites:のデフォルトでの/home/vagrant/code/publicを今後新たなアプリの作成のために/home/vagrant/code/blog/publicのように追加した場合には以下のコマンドが必要になります。


そのままHomesteadのlaravelを起動すると”NO input file specified”とエラーが出ることがありますので、VSCodeで変更を保存後、以下のコマンドを実行してください。

vagrant up --provision

これで仮想マシンに変更が反映されると同時にvagrantが起動します。

Homestead.yamlファイルを変更の必要がない方は以下のコマンドを実行してください。

のちの変更はいくらでも可能です。
変更が必要になったら、上記のコマンドを実行して変更を反映させれば大丈夫です。

vagrant up

仮想マシンが起動されているかを確かめてみます。
以下のコマンドを実行してください。

vagrant status

以下のように表示されていれば成功です。

停止する場合は以下のコマンドで停止できます。

vagrant halt

とりあえずこのまま進んでいきますが、一時休憩される場合は停止しておいてもかまいません。
再度起動される場合は以下のコマンドで仮想マシンを起動できます。
homestead.yamlファイルを書き換えていなければ、–provisionのオプションは必要ありません。

vagrant up

現在のままでhomestead.testとブラウザで表示しようとしてもページには”No input file specified.”と出ているだけです。

当然のことながらまだlaravelをインストールしていませんから間違いではありません。

では次回をお楽しみに。

仮想化環境の基本的な部分の構築は以上で完了です。
次はlaravelフレームワークを仮想マシンにインストールして実際のアプリ開発へ進みます。

お疲れ様でした。



ABOUT US
チョッキー
ハーレーとアウトドアが大好きで、日本の文化・伝統をこよなく愛する 男性です。サイト作成・PHP・Java・JavaScriptのプログラミングとweb ライティングを副業に、日々楽しんでいます。 1980年代にUnix.osに興味を持ち、linuxの開発にも少しばかり関わりました。 昨今のIT世界の進化を享受して頂き、少しでも誰かの役に立てればと奮闘しています。 このサイトはワードプレス を利用し、PHP言語でカスタマイズしており、私の趣味で公開しています。 閲覧には会員登録が必要ですが、全て無料ですので安心して閲覧してくください。  座右の銘は”座って半畳、寝て一畳” 所詮人間などそんなもんでしょうというところです。年齢や性別・学歴など不問。一緒に悩み・励まし・歩む、その様な仲間が増えることを願ってます。                           
%d人のブロガーが「いいね」をつけました。