Laravel Homesteadの設定をしよう!【開発環境構築】

未経験者のためのPHP・Laravel講座

f:id:sakusaku57:20191230013029p:plain

前回の記事では、Laravelの開発環境を作るための便利ツールであるLaravel Homesteadをダウンロードしました。

www.maji-peace.com

 

しかし、ただダウンロードしただけでは動きません。

個別の設定が必要なんです・・・

(まだかよ!!って感じですが、もう少しの辛抱です)

 

本記事では、Homesteadの設定をしていきます。

 

Homestead.yamlファイルの設定

  • 1.yamlファイルを開く

前回の記事の最後に、Homesteadの初期化を行いました。

すると、Homestead.yamlというファイルが生成されますので、ターミナルを開いて確認してみましょう。

$cd ~/Desktop/app/Homestead   //Homesteadをダウロードした場所に移動
$ls //同じ階層にあるファイル・フォルダを一覧で表示するコマンド
Homestead.yaml

この、Homestead.yamlというファイルを編集して、諸々の設定をしていきます。

このファイルを設定することで、今回作ろうとしている仮想PC(仮想環境)の設定を行っていくと考えてください。

 

ターミナルからでもファイルを編集することはできるのですが、

今回は単純にPC上から開いてください。

appフォルダの中のHomesteadフォルダの中にHomestead.yamlファイルがあるので、開きます。

開く際は、ご自身で使用しているエディタを開いてください。

 

※エディタって何じゃ!?という方は以下の記事を参考に、エディタをインストールしてください。

この記事ではAtomというエディタを紹介していますが、正直エディタは好みなので何でもいいです。

エディタ「Atom」のインストールと初心者向け初期設定 | 👑おすすめのプログラミングスクール比較!最短で上達するなら?
プログラミングスクールの侍エンジニア塾で、パソコンのメモ帳(テキストエディタ)はAtomがいいよ、というのを教えてもらいました。 今まではサクラエディタやCresent Eveを使...

(ちなみに、私は仕事ではVScodeというものを使っています。)

 

  • 2.yamlファイルを編集

開くと以下のような記述がされていると思います。

今回のアプリ名は、postmovieとしますので、基本はその名前を指定していきます。

---
ip: "192.168.10.10" //今回作るアプリのURL(IPアドレス)だと思ってください
memory: 2048 //割り当てるメモリ、メモリは一時的なデータの読み書きに使われるためアプリ動作に影響します
cpus: 2 //cpuのコア数、cpuはPCの作業をしてくれるやつだと思ってください、それが2つある感じです
provider: virtualbox //使用仮想マシンの指定、今回はvirtualboxを使っています
authorize: ~/.ssh/id_rsa.pub //ssh公開鍵が置いてある場所のパスを指定、この後設定します
keys:
- ~/.ssh/id_rsa //ssh秘密鍵が置いてある場所のパスを指定、この後設定します
folders:
- map: ~/Desktop/app/postmovie //自分のPC(ローカル)上のアプリがあるフォルダを指定します
to: /home/vagrant/postmovie //仮想環境上で自分のPC上のアプリのフォルダを同期して置く場所を指定です
sites:
- map: postmovie.app //ブラウザからアクセスする時のURL名を決められます、PC側でも他に設定が必要です
to: /home/vagrant/postmovie/public //ブラウザからアクセスした時にこのパスの配下を表示します
databases:
- postmovie //データを保存するデータベースの名前を指定できます
features: //これ以下はオプションの設定をする時に使います。今回は使いません。
- mariadb: false
- ohmyzsh: false
- webdriver: false

上記のように編集できたら保存してください。

 

  • 3.sshの設定を行う

sshって何じゃ!?と混乱するかもしれませんが、簡単に言えば「安全な通信を実現する方法」です。

 

今回、PC上に仮想環境(PC上に作ったもう一つの仮想PC)を作成していますが、この時、PCのことを「ローカルサーバ」、仮想環境のことを「リモートサーバ」と呼びます。

ローカルサーバからリモートサーバを操作する時に使う方法が、sshという方法です。

なぜかというと、他の誰かに勝手にリモートサーバに接続できなくするためです。

 

そして、sshを利用するためにを、公開鍵認証方式を使います。

公開鍵認証方式とは、「公開鍵」「認証鍵」を用いて接続する仕組みです。

詳しく知りたい場合は、以下の記事がわかりやすいです。

「よく分かる公開鍵認証」~初心者でもよくわかる!VPSによるWebサーバー運用講座(2) | さくらのナレッジ
VPSによるWebサーバー運用講座の連載2回目です。 今回は、安全にsshのログインを行うため「公開鍵認証(こうかいかぎにんしょう」の設定をします。 公開鍵認証は、そのメカニズムが複雑なため、設定する段階で挫折してしまう方が多いようです。ここでは理論はとりあえず置いといて、設定ができることに重点をおき説明します。今まで...

 

2で設定したHomestead.yamlの中で、authorize・keyと設定した箇所がこれに当たります。

 

設定自体は簡単で、以下のようにターミナルでコマンドを打ち込んでください。

 

$cd ~/      //ホームディレクトリに移動(ホームディレクトリはログインユーザ用のディレクトリです)
$ssh-keygen -t rsa //鍵の生成(以前すでに生成している方は不要です)
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/ユーザ名/.ssh/id_rsa):
(上記のようなメッセージが出てきます。これはどこに鍵を保存するか聞かれています。
Homestead.yamlには、keys:~/.ssh/id_rsaと設定したので、これで大丈夫です。Enterを押します。)
Enter passphrase (empty for no passphrase):
(次に、パスワードを設定するか聞かれます。設定した場合は、sshでつなぐ時にそのパスワードを入力する必要があります。セキュリティの観点上何かしら設定してください。なお設定しなくても次には進めます。入力したらEnter。)
Enter same passphrase again:
(再度パスワード確認です。入力したらEnter。)
$ls -la .ssh  //生成できたか確認します(lsは今いるディレクトリの中身を一覧で表示、-laは隠しファイルも表示するオプションです。通常、「.」が最初につくファイルは隠しファイルとして表示されません。)
id_rsa id_rsa.pub //この二つのファイルが表示されていればOKです。

 

  • 4.PCのhostにサイトのURLを設定する

これは、Homestead.yamlに設定した「sites」に入力した「URL」を反映するための作業です。

実は、PC側にこの設定をしなければ、postmovie.appとブラウザに打ち込んでも表示されません。

なぜなら、このサイトのURLは、Homestead.yamlで最初に設定したip:192.168.10.10だからです。

この192.168.10.10をpostmovie.appに紐づけてやる必要があります。

これを「名前解決」と呼びます。

例えば、本ブログのURLはmaji-peace.comですが、名前解決された結果こうなっているんですね。

ターミナルで、以下のように打ち込んでください。

$cd /etc/   //ホストを設定するディレクトリに移動
$sudo vi hosts   //sudoは管理者ユーザで実行するコマンド、viはターミナル上でファイルを編集できるコマンド
(hostsファイルは管理者でなければ編集できないためsudoというコマンドをつけています)
開いたらキーボードの「i」を押してください。「i」は編集するためのコマンドです。
一番下に、「192.168.10.10 postmovie.app」を追記します。
追記したらキーボード「esc」を押した後、「:wq」を打ち込んで編集を保存します。

viについては、かなりの頻度で使うコマンドになります。

最初は難しいと思いますが、やっていくうちに慣れていきますので、頑張りましょう!

詳しいコマンド等は、以下のようにググると出てきますので、確認してみてください。

viコマンドについて詳しくまとめました 【Linuxコマンド集】
viはLinuxの標準のテキストエディタを起動するコマンドだ。Linuxを使う上で、viエディタを使うケースは非常に多い。今回は、基本的なviエディタの使い方を解説する。ぜひLinuxユーザーとしてのスキルアップに役立ててほしい。

 

  • 5.アプリのディレクトリを作成

やっと、ほぼ全ての設定が完了しました・・・長かったですね。

それでは、今回作るアプリのファイルを格納するディレクトリを作ります。

Homestead.yamlには、「~/Desktop/app/postmovie」のように設定しましたね。

ターミナルで、以下のコマンドを打ち込んでください。

$cd ~/Desktop/app/    //appフォルダに移動
$mkdir postmovie       //postmovieというフォルダを作成

 

  • 6.仮想環境(PC上に作った仮想PC)の起動

最後です!いよいよ仮想環境を立ち上げます!

ターミナルで、以下のコマンドを打ち込んでください。(結構時間がかかります)

$cd ~/Desktop/app/Homestead    //Homesteadフォルダに移動
$vagrant up   //仮想マシンを起動、止まったら次へ
$vagrant ssh //sshで仮想マシンにログイン

$vagrant@homestead:~$ //このようになったら成功です!!

$vagrant@homestead:~$exit //このコマンドで仮想環境から抜けます

$vagrant halt //このコマンドで仮想環境を停止できます。作業が終わったら必ず停止させるようにしましょう

 

以上で、開発環境の構築は終了です!!

(ちなみに仮想環境の停止は、virtual boxアプリを立ち上げての実行も可能です)

 

次回はいよいよLaravelをインストールして、プロジェクトをスタートしましょう! 

www.maji-peace.com

 

コメント

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