DockerでLaravelの環境構築(Windows)
どもどもTikkaです。
10月の頭に雑学投稿サービス「ザツバコ」をリリースしました。
雑学や教養ををもっと手軽に集められたらいいな~という思いで作ったサービスですが、初めてのWeb制作だったので前途多難でした。
このサービスを作る過程で勉強したことを振り返るための備忘録として残そうかなと思います。
DockerDesktopをインストール
上記のサイトのナビバーからProducts→DockerDesktopを選択。
DownloadforWindows(stable)を選択
DockerDesktopInstallerがインストールされるので実行する。
Windows10のProを使っている人はこのままDockerを使えますが、HOMEの場合はDockerToolboxというのをインストールする必要があります。
詳しい説明は省きますが、.exeをここからインストールします。
Laradockインストール
LaradockとはLaravelを動かす為に必要なWebサーバーや、多くの場合でデータベースをDocker上に簡単に構築することができます。
ターミナルを開きます。
$ cd
ホームに移動して適当な名前のディレクトリを作ります。今回はlara-testというディレクトリを作りました。
$ mkdir lara-test
$ cd lara-test
lara-test上で、gitを使ってLaradockをインストールします
$ git clone https://github.com/Laradock/laradock.git -b v9.6
$ ls
Laradockと表示されます。
laradockの.envファイルを作成する
環境変数を設定できる.envを作成します。
$ cd laradock
$ cp env-example .env
laradockは、.envファイルの雛形としてenv-exampleファイルを用意してくれているので、これを元に作成します。
エディタを使って、.envファイルを編集します。
└──lara-test
└── laradock
└── .env
該当箇所を以下のように編集します。
APP_CODE_PATH_HOST=../laravel
DATA_PATH_HOST=../data
COMPOSE_PROJECT_NAME=lara-test
Dockerを使って開発環境を起動する
Docker上で動く各サービスのコンテナを起動します。
今回は以下の4つのコンテナを起動します。
workspace
php-fpm
nginx
postgres
データベースのPostgreSQLはバージョン11.6を使います。
そのため、laradock/postgresディレクトリにあるDockerfileの1行目を以下のように修正します。
FROM postgres:11.6
編集が終わったら、lara-test/laradockディレクトリに移動します。
$ cd ~/lara-test/laradock
以下のコマンドを実行します。
$ docker-compose up -d workspace php-fpm nginx postgres
docker-compose…複数のコンテナを同時に取り扱うDocker Composeという機能を使うためのコマンドです
up…Docker Composeでコンテナを起動するときに使うコマンドです。
-d…コンテナを起動した後に、ターミナルの操作に戻るためのオプション
以下のメッセージが表示されたらコンテナの起動は完了です。
Creating lara-test_docker-in-docker_1 ... done
Creating lara-test_workspace_1 ... done
Creating lara-test_php-fpm_1 ... done
Creating lara-test_nginx_1 ... done
Creating lara-test_porstgres_1 ... done
コンテナの起動が完了したら、今度はブラウザを起動し、アドレスバーにlocalhostと入力してください。
404 Not Foundと出ていたら大丈夫です。
Laravelのインストール
lara-test/laradockディレクトリで以下のコマンドを実行する。
$ docker-compose exec workspace composer create-project --prefer-dist laravel/laravel . "6.8.*"
Laravelのウェルカムページへアクセスする
Laravelのインストールが完了したら、ブラウザでlocalhostにアクセスしてください。
Laravelのウェルカムページが表示されます。
Laravelの時刻設定を日本時間にする。
.
└──lara-test
└── laravel
└── config
└── app.php
以下のように編集する。
// 略
/*
|--------------------------------------------------------------------------
| Application Timezone
|--------------------------------------------------------------------------
|
| Here you may specify the default timezone for your application, which
| will be used by the PHP date and date-time functions. We have gone
| ahead and set this to a sensible default for you out of the box.
|
*/
'timezone' => 'Asia/Tokyo', //-- この行を変更
// 略
Laravelのインストールは完了です。
この記事が気に入ったらサポートをしてみませんか?