LoginSignup
15
16

More than 3 years have passed since last update.

Laravel Sailで作成したプロジェクトをGitHubリポジトリにpushして利用する

Posted at

Laravel Sailでさくっとプロジェクト作成する手順をまとめたのですが、そのプロジェクトをGitHubリポジトリにpush後、cloneして利用するのに少し難儀したので、手順をまとめました。

前提

こちらの記事でLaravelプロジェクトを作成済み。

手順

GitHubでリポジトリ作成

公式のドキュメントがわかりやすいです。

GitHubリポジトリにpush

Laravelプロジェクトのディレクトリでローカルリポジトリを作成し、GitHubの(リモート)リポジトリにpushします。

実際に作成したリポジトリが以下となります。

kai-kou/laravel-sail-sample-projects: Sample project made with Laravel Sail and Laravel Breeze.  
https://github.com/kai-kou/laravel-sail-sample-projects

> cd <Laravelプロジェクトのディレクトリ>
> git init
# masterブランチの名前変更(必要であれば)
> git branch -M main
> git add .
> git commit -m “<コミットメッセージ>”
> git remote add origin <GitHubのリポジトリURL(HTTPS or SSH)>
> git push -u origin main

Laravel Sailでプロジェクト作成すると.gitignoreが含まれており、除外すべきファイル・ディレクトリも設定してくれているので、助かります。

.gitignore
/node_modules
/public/hot
/public/storage
/storage/*.key
/vendor
.env
.env.backup
.phpunit.result.cache
docker-compose.override.yml
Homestead.json
Homestead.yaml
npm-debug.log
yarn-error.log

GitHubリポジトリをクローンして利用する

GitHubリポジトリからクローンしてプロジェクトが利用できるようにします。ここでは私が作成したリポジトリを利用します。

GitHubリポジトリをクローン

> cd <リポジトリをcloneするディレクトリ>
> git clone https://github.com/kai-kou/laravel-sail-sample-projects.git
> cd laravel-sail-sample-projects

プロジェクトのセットアップ

クローンしたリポジトリにはvendor ディレクトリや.env ファイルが含まれていないので用意します。

環境変数の設定
> cp .env.example .env

今回のGitHubリポジトリに含まれる.env.example はすでに設定変更済みですが、以下の設定を変更する必要があります。

.env
APP_URL=http://localhost
DB_HOST=mysql
MEMCACHED_HOST=memcached
REDIS_HOST=redis
MAIL_FROM_ADDRESS=hoge@example.com
PHPのパッケージのインストール

vendor ディレクトリはリポジトリに含まれていないので、パッケージをインストールします。手元のPCにPHPやComposerがインストールされていればそれを利用することもできますが、ここでは、Laravel Sailのセットアップスクリプトでも利用されているDockerイメージを利用してインストールします。

# パッケージのインストール
> docker run --rm \
  -v $(pwd):/opt \
  -w /opt \
  laravelsail/php80-composer:latest \
  bash -c "composer install"

コマンドを叩くのが若干面倒なので、セットアップ用のスクリプトを用意しておくと便利かと思います。

Dockerコンテナの起動

パッケージがインストールできたらsail コマンドが利用できるようになるので、Dockerコンテナの起動とLaravelのAPP_KEYを生成します。

# Dockerコンテナの起動
./vendor/bin/sail up -d

# LaravelのAPP_KEY生成
./vendor/bin/sail artisan key:generate

APP_KEY.envに設定されます。設定されていないと以下のようにNo application encryption key has been specified. エラーとなるのでご注意ください。
image.png

Node.jsのパッケージをインストール

今回のプロジェクトではLaravel Breezeを利用しているので、Node.jsのパッケージもインストールします。

> ./vendor/bin/sail npm install
> ./vendor/bin/sail npm run dev
マイグレーション実行

マイグレーションを実行して必要となるテーブルを作成します。

> ./vendor/bin/sail artisan migrate

動作確認

以下のURLが表示されたらセットアップ完了です。

http://localhost/
image.png

http://localhost:8025/
image.png

やったぜ

参考

Laravel SailとLaravel Breezeでさくっとログイン機能を実装する - Qiita  
https://qiita.com/kai_kou/items/12c060a8b5e6eb409da8

15
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
16