LoginSignup
10
12

More than 5 years have passed since last update.

[25分でできる!]Laradockを使ったLaravel環境構築

Last updated at Posted at 2018-12-12

この記事に書いていること

Laradockを使ったLaravelの環境構築方法を書いています.
Laravel以外の周辺技術はMySQL, Nginxです.

[5分でおわる!]みたいなタイトルにしたかったのですが, Dockerイメージのダウンロードに合計25分くらいかかってしまうので, [30分でできる]というなんとも微妙な数値になりました.
インターン先でLaravel勉強会を開催したときの資料をほぼ使いまわしていますが, 改めて見てもかなり一瞬で環境構築終わるので素敵でした.

環境構築の前に必要なもの

  • Docker
  • Docker-compose

Dockerはこちらからダウンロードが可能です

  • Git

環境構築

1: 作業ディレクトリを作成する

環境構築が完了したときのディレクトリ構成を説明しておくと以下のようになります.

  • 作業ディレクトリ
    • laradock
    • application

applicationディレクトリの中にLaravelのソースコードがあります.
まずは適当な場所に作業ディレクトリを作成し, カレントディレクトリをそこへ移します.
今回は laravel という作業ディレクトリを作成し, そこで作業を進めることにします.

mkdir laravel && cd laravel

2: Laradockをクローンする

先程作成した laravel ディレクトリ配下にlaradockをクローンします.

git clone https://github.com/LaraDock/laradock.git

Laradockの公式ページ

3: 環境設定ファイルを作成

laradock用の設定ファイルを作成します. ベースのなるファイルがlaradockディレクトリにあるのでそれをコピーするだけでOKです.

cd laradock # 先程クローンしたlaradockディレクトリに移動します
cp env-example .env

4: Laravelアプリケーションを作成する

一度Laravel用のコンテナを立ち上げます. Laravelサーバーはworkspaceという名前のコンテナです.
docker-composeコマンドはlaradockディレクトリ配下で行います.

docker-compose up -d workspace

コンテナが作成されたらコンテナ内に入り, Laravelアプリケーションを作成するコマンドを実行します.

docker-compose exec workspace  /bin/bash

コンテナ内で以下のコマンドを実行し, Laravelアプリケーションを作成します.
「sample_app」がアプリケーション名になり, ディレクトリ名にもなります.

composer create-project laravel/laravel sample_app 

Laravelアプリケーションが作成されたら一度コンテナから出ます

exit

5: 環境設定ファイルの修正

手順2 で作成した .env を修正します.
8行目のアプリケーションへのPATHを指定します.

# Point to the path of your applications code on your host
APP_CODE_PATH_HOST=../sample_app

また, MySQLのデータベースがlatestだと8.0になってしまい, うまく動作しないことが多いので, 5.7に設定しておきます(198行目)

MYSQL_VERSION=5.7

6: コンテナの再起動

Laravel, nginx, MySQLのコンテナを立ち上げます.

docker-compose up -d workspace nginx mysql

7: ブラウザで見る

http://localhost
へアクセスするとLaravelの初期画面が見えるはずです!

Image from Gyazo

laravelディレクトリ配下にsample_appというディレクトリができており, そこでLaravelの開発ができます!
試しに, sample_app/resources/views/welcome.blade.php をいじってみると画面が変わります!

10
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
12