概要
Laravel プロジェクトを開始するまでのコマンドをまとめた個人メモ。
前提条件
- MacOS
- Composer, Laravel インストールされている
- Docker がインストールされている
プロジェクトの開始
Version6系を使用し、tasklist
というプロジェクト名で作成する
$ composer create-project --prefer-dist laravel/laravel tasklist ^6.0
DB作成
Dockerを使用し、mysql
コンテナを立ち上げる。
$ docker run --name mysql -e MYSQL_ROOT_PASSWORD=mysql -d -p 3306:3306 mysql
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4ded8e15debd mysql "docker-entrypoint.s…" 6 days ago Up 6 days 0.0.0.0:3306->3306/tcp, 33060/tcp mysql
プロセスで表示されたCONTAINER ID
を使用し、コンテナに接続後DBの作成を行う
mysqlのパスワードはMYSQL_ROOT_PASSWORD
引数で指定した値。
$ docker exec -it 4ded8e15debd86c73e637b0c612bf30f0cd9de0aec04b4c09a0f53a6fa16f35d bash
root@4ded8e15debd:/# mysql -u root -p -h 127.0.0.1
Enter password: mysql
mysql> CREATE DATABASE tasklist;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| tasklist |
+--------------------+
5 rows in set (0.03 sec)
DB 接続情報の定義
プロジェクト配下の .env
ファイルで接続情報を定義する。
接続情報は個々の環境に合わせて変更すること。
$ cd tasklist
$ vim .env
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=tasklist
DB_USERNAME=root
DB_PASSWORD=mysql
DB接続の確認
Webアプリが正常にDB接続できているか確認を行う。
以下のように表示されている場合接続できている。
$ php artisan tinker
Psy Shell v0.10.4 (PHP 7.4.10 — cli) by Justin Hileman
>>> DB::reconnect();
=> Illuminate\Database\MySqlConnection {#3233}
タイムゾーンの変更
デフォルトではUTCのため、Asia/Tokyo
に変更する。
$ vim config/app.php
'timezone' => 'Asia/Tokyo',
アプリの起動
内部サーバを起動させる。
デフォルトで用意されている welcome.blade.php
のviewが表示される
$ php artisan serve --host=127.0.0.1 --port=8080
備考
コンテナを停止する際は以下コマンドを実行すること。
$ docker stop { CONTAINER ID }