【Laravel】Laradockを使い最速で簡単に環境構築 #3Laravelインストール
- 2020.02.23
- Web
今日は、最終回でいよいよLaravelをインストールしていきます。
これからやること
合計3回にわたって、以下のことをやっていきます。
前回からの続きで、下記のようなフォルダ構成になっていると思います。
project-folder
└── laradock
これからLaravelをインストールして、下記のようなフォルダ構成にしていきたいと思います。
project-folder
└── laradock
└── laravel
Laradockのセットアップ
Docker Quickstart Terminalを起動します。laradockフォルダに移動して、.envの作成をします。
$ cd laradock
$ cp env-example .env
作成された.envの8行目周辺にあるAPP_CODE_PATH_HOSTを以下のように編集します。
project-folder
└── laradock
└── .env
# Point to the path of your applications code on your host
APP_CODE_PATH_HOST=../laravel
nginxが入っているコンテナの起動
nginxといわれるWebサーバソフトが入っているコンテナーを起動すると、ローカルPCのブラウザからLaravelの環境にHTTPリクエスト、HTTPレスポンスができるようになります。
以下のコマンドでnginxのコンテナを起動します。
$ docker-compose up -d nginx
・
・
中略
・
・
Creating laradock_docker-in-docker_1 ... done
Creating laradock_workspace_1 ... done
Creating laradock_php-fpm_1 ... done
Creating laradock_nginx_1 ... done
「docker-compose」は複数のコンテナを管理するときにdockerを操作する便利なコマンドです。「up -d」はバックグラウンドで起動させてます。
以下のサイトが「docker-compose」についてうまくまとめられています。
DockerComposeの基本
https://qiita.com/tfrcm/items/970f6b22e11145478ab1docker-composeを使うと複数コンテナの管理が便利に
https://qiita.com/y_hokkey/items/d51e69c6ff4015e85fce以下のコマンドでコンテナの起動を確認します。
StateがUpになっていればコンテナが正常に起動されています。
$ docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------------------------------------------------------------------
laradock_docker-in-docker_1 dockerd-entrypoint.sh Up 2375/tcp, 2376/tcp
laradock_nginx_1 /bin/bash /opt/startup.sh Up 0.0.0.0:443->443/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:81->81/tcp
laradock_php-fpm_1 docker-php-entrypoint php-fpm Up 9000/tcp
laradock_workspace_1 /sbin/my_init Up 0.0.0.0:2222->22/tcp, 0.0.0.0:8001->8000/tcp, 0.0.0.0:8080->8080/tcp
Laravelインストール
Laravelの実行環境になるworkspaceにログインし、Laravelをインストールします。
$ docker-compose exec workspace bash
/var/www# composer create-project --prefer-dist laravel/laravel .
・
・
中略
・
・
Package manifest generated successfully.
> @php artisan key:generate --ansi
Application key set successfully.
「composer」はPHPのパッケージ管理ツールです。
PHP開発でComposerを使わないなんてありえない!基礎編
https://qiita.com/niisan-tokyo/items/8cccec88d45f38171c94workspaceコンテナには、最初からcomposerコマンドが使えるようになっています。
# composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.9.1 2019-11-01 17:20:17
Laravelのページ出力確認
いままで構築してきたLaravelの環境にアクセスして、ブラウザに画面表示させてみたいと思います。
Dockerには起動時にIP 192.168.99.100が割り当てられています。
そのため、ブラウザに画面表示させるためには、ブラウザのアクセス欄には「http://192.168.99.100」を入力します。
Enterを押して、以下の表示がされていたら成功です。
作業終了
このままウィンドウ右上の×を押して、強制終了してしまうと、次回Dockerを起動したときに不具合が起こる可能性があるため、以下の作業を行います。
workspaceコンテナを抜けます。
# exit
exit
「stop」コマンドで現在起動しているコンテナ全てを停止します。
$ docker-compose stop
Stopping laradock_nginx_1 ... done
Stopping laradock_php-fpm_1 ... done
Stopping laradock_workspace_1 ... done
Stopping laradock_docker-in-docker_1 ... done
$ docker-compose ps
Name Command State Ports
------------------------------------------------------------------------------
laradock_docker-in-docker_1 dockerd-entrypoint.sh Exit 0
laradock_nginx_1 /bin/bash /opt/startup.sh Exit 137
laradock_php-fpm_1 docker-php-entrypoint php-fpm Exit 0
laradock_workspace_1 /sbin/my_init Exit 0
docker-machineを停止します。
$ docker-machine stop
Stopping "default"...
Machine "default" was stopped.
$ exit
まとめ
これで、Laradockを使ったLaravelの環境構築は終了です。
想像以上に簡単だったかと思います。
Dockerで仮想化をして、Laravelの環境構築をする最大のメリットは、うまくいかなかったらコンテナを削除して、また入れ直すというのがとても簡単にできることです。
もうどうにでもならなくなったら、Docker toolboxをアンインストールして、
再度インストールしてもいいですし笑
もし、Laravelについて詳細な情報が知りたい方は、公式サイト他いろいろググってみてくださいね。
Laravelには日本語で詳細なドキュメントが用意されています。
公式ドキュメント
https://readouble.com/laravel/公式ドキュメントは少し難しいと思われる方は、まず下記の書籍がとてもわかりやすいです。今年の初めに第2版が販売されて、現在のLaravel6のバージョンに対応しています。
このあとの学習方法としては、ポートフォリオの制作に入ると思うのですが、いきなりポートフォリオ制作に入ると、何を作っていいのか悩みがち、、、
ネット上には、無料で素晴らしいチュートリアル形式の記事がたくさんあります。
有料ですが、Techpitというサービスもおすすめです。教材がたくさんあり、なにか不明点があればコメントで執筆者に聞くこともできます。
Techpit(テックピット)はこちらから
以上です。これまでお付き合いいただきありがとうございました。
それでは。
-
前の記事
【Laravel】Laradockを使い最速で簡単に環境構築#2Gitのインストール 2020.02.22
-
次の記事
【Laravel】Laradockを使い最速で簡単に環境構築【補足】#1データベースに接続 2020.02.24