このサイトのリンクには広告リンクが含まれます。

Laravelプロジェクトをクローンした後にやる事

この記事は約4分で読めます。

GitHubを利用してlaravelのプロジェクトを管理している場合、開発環境のすべてのファイルは共有されません。

別の開発環境にクローンする場合は、足りないファイルを作成する必要があります。

以下の手順で行います。

  1. 開発に必要なファイル(vendorディレクトリ等)を復活させる
  2. .envファイルを作成する
  3. マイグレーションを行う
  4. Vite のビルドを実行する

開発に必要なファイルの復活

プロジェクトのフォルダに移動して、以下のコマンドを実行します。

docker run --rm -v $(pwd):/opt -w /opt laravelsail/php82-composer:latest bash -c "composer install"

このコマンドは、一時的に Docker コンテナを起動し、ホスト側の現在のディレクトリ($(pwd))をコンテナ内にマウントして、その中で composer install を実行するものです。

実行が完了したら、コンテナは自動的に削除されます。各オプションの意味は以下のとおりです。

  1. docker run --rm
    • 新しくコンテナを起動するコマンドです。
    • --rm オプションにより、コンテナが停止した後に自動的に削除されるため、使い捨てのコンテナとして利用できます。
  2. -v $(pwd):/opt
    • ボリュームマウントを指定しています。
    • $(pwd) は「ホスト上の現在の作業ディレクトリ(カレントディレクトリ)」を意味し、それをコンテナ内の /opt というパスにマウントします。
    • これにより、ホスト側のファイル(Laravel プロジェクトなど)がコンテナ内からも /opt ディレクトリとして参照・操作できます。
  3. -w /opt
    • コンテナ内での「作業ディレクトリ(カレントディレクトリ)」を /opt に設定します。
    • 先述のマウントにより、ここはホスト側のソースコードが見える場所となります。
  4. laravelsail/php82-composer:latest
    • 起動するコンテナの イメージ です。
    • PHP 8.2 および Composer がインストールされたイメージで、Laravel Sail 用に用意されているものです。
  5. bash -c "composer install"
    • コンテナ内で実行するコマンドです。
    • bash -c でシェルコマンドを指定し、その中で composer install を実行しています。
    • Composer はコンテナに最初からインストールされているため、ホスト環境に Composer が無くても実行できます。

やっていることの概要

  1. Docker イメージ(laravelsail/php82-composer:latest)で一時的なコンテナを立ち上げる。
  2. ホストのカレントディレクトリをコンテナ内の /opt にマウントする。
  3. コンテナ内の作業ディレクトリを /opt に設定する。
  4. その場所で composer install を実行する。
  5. 終了後にコンテナを破棄する(--rm により自動で削除)。

メリット

  • ホスト側に Composer や PHP をインストールしていなくても、Docker イメージを利用して Composer の処理が実行できる。
  • 一時的なコンテナなので、ホスト側の環境を汚さない。
  • Laravel のプロジェクトにおける依存パッケージのインストールに便利で、CI/CD やチーム開発でも同じ環境・同じバージョンで Composer を実行しやすい。

要するに、このコマンドは「Docker を使ってローカルコードを読み込み、コンテナ内で Composer の処理を行って依存パッケージをダウンロード・更新し、最後にコンテナを削除する」という一連の作業をまとめてやっている、ということです。

.envファイルを作成する

環境に合わせた.envファイルを作成します。

環境が同じならば元の環境のものをコピーしてもOK。

マイグレーションを行う

データベースを作成するためにマイグレーションを行います。

Laravel Sailを起動

./vendor/bin/sail up

マイグレーションを行う

./vendor/bin/sail artisan migrate

Vite のビルドを実行する

./vendor/bin/sail npm run build

私の環境では、これを行わないと実行時にエラーになりました。

詳しくはこちらの記事を見てください。

この記事が参考になったら下の「参考になった」ボタンをお願いいたします。

では、良いLaravelライフを~

コメント

タイトルとURLをコピーしました