#はじめに
###今回構築したい環境
- Laravel 5.6 (好きな)
- Vue.js (node8.11.4 npm5.6)
- Mysql 5.7
- Nginx
###僕の環境
- MacOS Mojave 10.14
- Docker of Mac
###ディレクトリ構造
myapp
├── laradock
└── src (Laravel)
※ DockerとGitのコマンドを入力出来るようにしてください。
##Laradockを準備する
####プロジェクトフォルダの作成
$ mkdir myapp && cd myapp
####下準備ができたのでLaradockをクローンします。
$ git clone https://github.com/Laradock/laradock.git
ここまで来ると上記に記述したディレクトリ構造が出来ると思います。
Laravelをインストールする前にLaradockの環境設定していきます。
####Laradock環境設定
laradockフォルダに移動し.envを作成します。
$ cd laradock && cp env-example .env
####.envを下記のように編集します。
APP_CODE_PATH_HOST=../ #後にPATHを通します。
DATA_PATH_HOST=.laradock/data #MySQLファイルが永続化しているため。
NGINX_HOST_HTTP_PORT=80 #80番を他で使用している場合は変更しましょう。
MYSQL_VERSION=5.7 # バージョン指定
MYSQL_DATABASE= # 作成するDB名
MYSQL_USER= # ユーザー名
MYSQL_PASSWORD= # パスワード名
MySQLを5.7に指定しているのは**Sequel pro(データベースのGUIツール)**がまだMySQL8.0に対応していないためです。またSequelproは8.0に対応しないと表明が出ていたので、どうしても8.0を使いたい場合はその他のCUIやGUIで作業を行ってください。
####Dockerを立ち上げる
$ docker-compose up -d nginx mysql
Starting laradock_mysql_1 ... done
Recreating laradock_workspace_1 ... done
Recreating laradock_docker-in-docker_1 ... done
Recreating laradock_php-fpm_1 ... done
Recreating laradock_nginx_1 ... done
立ち上がるとlocalhostへアクセスしてみてください!
[404 Nginx]が表示されると思います。
Ngiinxがしっかり立ち上がってることが確認出来ます。
####workspaceコンテナに接続
$ docker-compose exec workspace bash
このコマンドでDocker内に入る事ができます。Dockerで作業し始めるとartisanコマンドなどLaravelでコマンドを入力するときはWorkspaceに入ってから実行するようになるので気をつけてください。
##Laravelをインストールして設定ファイルの編集
カウントディレクトリが**/var/www#**になってると思いますのでComposerを使ってLaravelをインストールしましょう!この記事では"5.6.*"でバージョンを指定します。
/var/www# composer create-project laravel/laravel src "5.6.*"
Versionを指定しない場合は最新版がinstallされます。
詳しくは公式のDocumentを参照してみてください。
###Laravel内の.envファイルを編集
DB_CONNECTION=mysql
DB_HOST=mysql #デフォルトは127.0.0.1かと思いますが、mysqlに変更
DB_PORT=3306
DB_DATABASE= # Laradockで設定したDB名
DB_USERNAME= # Laradockで設定したユーザー名
DB_PASSWORD= # Laradockで設定したパスワード
ここでもう一度localhostにアクセススしてみてください。まだ[404 Nginx]が表示されているので、LaravelのWelcomeページを表示させて行きます。
###Laradock内の.envファイルを再度編集
一度exit
してWorkspaceを抜け、docker-compose stop
を実行してください。
そしてlaradock内の.envfileを再度編集し、laravelにPathを通します。
APP_CODE_PATH_HOST=../
↓
APP_CODE_PATH_HOST=../src/
完了できたらもう一度docker-compose up -d nginx mysql
で立ち上げ、localhostにアクセスしてみましょう。
Welcomepageが表示されたと思います。
※注意 最初にPATHを通すとsrc/srcのディレクトリ構成になるのであえて2度編集を加えました。
これでLaradockを使ったDockerとLaravelの環境構築は終了です。
##さいごに
Laradockを使えばめちゃくちゃ簡単に環境構築出来ますが、Dockerを理解できるとその他言語の環境もめちゃくちゃ簡単にできるので、おすすめです!
また高評価、コメント、フォローお願い致します!
###参考にさせて頂いた記事