Laradockを利用してlaravelの開発環境を構築する

Laradockを利用してlaravelの開発環境を構築する

Laradockを利用すれば、docker上にlaravelの開発環境が簡単に構築できます。前提として、dockerとgitがインストールされている者とします。

環境

  • OS  ubuntu19.10
  • docker 19.03.2

Laradock構築

開発用ディレクトリ作成。lara-testという名前で今回は作成してます。

mkdir lara-test
cd lara-test

Laradockインストール

## gitからインストールします
git clone https://github.com/Laradock/laradock.git

## 移動
cd laradock

.env作成して編集する

## サンプルをコピー
cp env-example .env

## 編集
vi .env

下記の内容を追加します。

DB_HOST=mysql
REDIS_HOST=redis
QUEUE_HOST=beanstalkd

コンテナを起動。初回はかなり時間がかかります。

docker-compose up -d nginx mysql phpmyadmin redis workspace 

起動して、http://localhostにアクセスすると404ページが表示されます。

次にコンテナにアクセスして、laravelプロジェクトを作成します。

docker exec -it laradock_workspace_1 bash
root@7cf52efa7bed:/var/www#

## test-projectという名前でプロジェクトを作成します
root@7cf52efa7bed:/var/www# composer create-project laravel/laravel test-project

一度、コンテナから抜けます

root@7cf52efa7bed:/var/www#exit

dockerを停止します。

docker-compose stop

ホストにあるlaradock配下にある.envを下記のとおりに編集します。

# Point to the path of your applications code on your host
APP_CODE_PATH_HOST=../test-project

再度、コンテナにアクセスして権限を設定します。

docker exec -it laradock_workspace_1 bash

root@7cf52efa7bed:/var/www# cd test-project
root@7cf52efa7bed:/var/www/test-project# chmod 766 storage
root@7cf52efa7bed:/var/www/test-project# chmod 766 bootstrap/cache

パーミッションを設定しないで起動するとエラーとなります。

コンテナを抜けて、コンテナを再起動します。

root@7cf52efa7bed:/var/www/test-project# exit

## 再起動
docker-compose restart

再度、localhostにアクセスするとLaravelプロジェクトが表示されます。