## モジュール 1: 環境の準備

このモジュールでは、IDE を起動し、Laravel 関連パッケージをインストールし、データをインポートしてハンズオン環境を準備します。

### 手順 1. IDE とターミナルを開く

+ [VS Code](${LAB:HTTPS_REVERSE_PROXY_URL}?next=${LAB:"/vscode/?folder=/root/Mshop"|urlencode} "VS Code") をクリックして、ブラウザでラボ IDE を開きます。Web ベースの VS Code が完全に読み込まれるまで約 10 秒かかる場合があります。

+ `≡`、`Terminal`、`New Terminal` の順にクリックして、VS Code で新しいターミナルを開きます。

  ![204_1_1_2.png 85%](https://lab-static.pingcap.com/images/2026/1/22/3b76f1103a379b4ff40bbdc0adc3a29e70352320.png)

### 手順 2. Laravel に必要な `.env` ファイルを確認する

+ プロジェクト内の `.env` ファイルの内容（21〜26 行目）を確認すると、現在の Laravel アプリケーションが Aurora (MySQL) データベースに接続されていることがわかります。TiDB Cloud クラスターの設定は現在コメントアウトされています。

  ![204_1_mshop_env.png 30%](https://lab-static.pingcap.com/images/2026/2/6/7df7a2204611cec003d4ca647e162cb3ca2ef79b.png)

  ```output
  ...
  # local mysql
  DB_CONNECTION=mysql
  DB_PORT=3306
  DB_HOST=${LAB:AWS_AURORA_SERVERLESS_ENDPOINT}
  DB_USERNAME=${LAB:AWS_AURORA_SERVERLESS_MASTER_USERNAME}
  DB_PASSWORD=${LAB:AWS_AURORA_SERVERLESS_MASTER_PASSWORD}
  DB_DATABASE=${LAB:AWS_AURORA_SERVERLESS_DATABASE_NAME}
  ...
  ```

### 手順 3. Laravel 関連パッケージをインストールしてデータをインポートし、アプリケーションを起動する

+ 以下のスクリプトをコピーして VS Code ターミナルに貼り付け、実行して Laravel 関連パッケージをインストールします。データのインポートとアプリケーションの起動用スクリプトは `prepare.sh` です。まず適切な権限を設定してからスクリプトを実行してください。このプロセスには約 1 分かかります。VS Code が「See text and images copied to the clipboard」というウィンドウをポップアップ表示したら、「Allow」をクリックしてください。

  ![204_1_env.png 45%](https://lab-static.pingcap.com/images/2026/2/4/d75efd5c0d0364c66065e70c17e9443bd05e5d11.png)

  ```bash
  chmod +x prepare_shop.sh
  ./prepare_shop.sh
  ```

  ```output
  Starting deployment process...
  ------------------------------------------------------------
  [INFO] Executing: composer install ...

  ...

  [SUCCESS] Command completed successfully.
  ------------------------------------------------------------
  [INFO] Executing: php artisan migrate ...

  INFO  Preparing database.

  Creating migration table ............................................................................ 51.27ms DONE

  INFO  Running migrations.

  0001_01_01_000000_create_users_table ............................................................... 252.69ms DONE
  0001_01_01_000001_create_cache_table ................................................................ 90.42ms DONE
  0001_01_01_000002_create_jobs_table ................................................................ 190.90ms DONE
  2025_12_20_112907_create_transactions_table ........................................................ 119.62ms DONE
  2025_12_20_120002_create_products_table ............................................................. 82.09ms DONE
  2026_01_03_040247_create_product_type_table ......................................................... 46.06ms DONE
  2026_01_03_040331_create_pay_types_table ............................................................ 44.52ms DONE

  [SUCCESS] Command completed successfully.
  ------------------------------------------------------------
  [INFO] Executing: mysql -u lab -plabpass -P3306 shop < initshop.sql ...
  [SUCCESS] Command completed successfully.
  ------------------------------------------------------------
  [INFO] Executing: composer require intervention/image:^2 ...

  ...

  >>> All tasks completed successfully! <<<
  ```

### 手順 4. Laravel アプリケーションを起動する

+ VS Code ターミナルで、`composer run dev` コマンドを実行して Laravel アプリケーションを起動します。

  ```bash
  composer run dev
  ```

  ```output
  > Composer\Config::disableProcessTimeout
  > @php artisan serve --host=0.0.0.0

    INFO  Server running on [http://0.0.0.0:8000].

    Press Ctrl+C to stop the server
  ```

+ 「Your application running on port 8000 is available.」というポップアップウィンドウが表示されたら、「Open in Browser」をクリックします。

  ![204_1_port_8000.png 85%](https://lab-static.pingcap.com/images/2026/2/5/4f681e3a7458c7631f2187c53100aa127e5bcaf4.png)

+ 次のモジュールに進みましょう。
