🍎

Laravel 環境構築〜実装スタートまでの流れ

2022/12/28に公開約2,000字

Laravelでのシステム開発を進める時、やることはほぼ決まっているのに調べて一応確認しながら開発環境の構築を行っていたので、自分でまとめたらいいやん。。って思ったのでまとめます!

gitで開発自体は管理する前提ですので、gitを使わない場合はgitのところは飛ばしてくださいな🤤

使用するもの

  • Docker
  • VSCode

やること

開発環境時は脳死で開発ができるところまで持っていきたいので、最初にまとめておきます

  • Dockerを立ち上げておく(※説明省きます)
  • githubでリポジトリを作成
  • 任意の場所にcloneする
  • cloneしたディレクトリ上でsailにてlaravelインストール
  • .envやdocker-compose.ymlの内容を任意のものに変更(しなくても一応問題ない)
  • 階層整理したら、立ち上げてみる
  • 問題がなければ push する
  • laravel/uiをインストールなど開発に進む…

さらに使用するsailコマンドはこちら↓
作業の間にディレクトリを整理したりしますが、実行コマンドはこれだけ

// Laravelをインストールする
% curl -s https://laravel.build/example-app | bash

// composerを更新する
% composer update  //エラーとなったら → composer install

// 実際に動かしてみる
% sail up -d  //パスを通していない場合は→ ./vendor/bin/sail up

githubでリポジトリを作成 → 任意の場所にcloneする

ローカルでリポジトリを作成してもいいのですが、なんとなくgithubでリポジトリを作ってクローンする方が慣れているので、この方法でやっています。
ただリポジトリを作成して、cloneしてくるだけですのでお好みの方法でお作りください🙇

cloneしたディレクトリ上でsailにてlaravelインストール

基本的にはここで、上記に記述した

% curl -s https://laravel.build/example-app | bash

を開発を進めたいディレクトリに移動して実行するだけです。
このコマンドで、ディレクトリ内にexample-appのディレクトリができ、その中にLaravelが一式入っている状態です(※基本的には最新版のLaravelがインストールされます)

.envやdocker-compose.ymlの内容を任意のものに変更

基本的にはそのままでも問題ないですが、DB名やユーザ名、パスワードなどを任意で決めたり、メール関連ではデフォルトでmailhogを使う仕様となっているので(バージョンによって違うかも🙇) mailtrapを使う場合では変更する必要があります。

メールに関しては、どのタイミングで変更しても問題ないでしょうが、DB関連は一度 sail up -d をした後では変更できない(めんどくさい)ので、最初のタイミングでまとめてやってしまうのが吉です!

階層整理したら、立ち上げてみる

おそらく上記の流れで行うと普通は

├─開発アプリ
│  ├─.git
│  └─example-app
│      ├app
│      ├─config
│      ├─database
│      ├─infra
…      …

のようなディレクトリ構造となるかなと思うので、.git と同階層にlaravelを入れてあげてください。
example-app配下のものを1つ上の階層に持ってくる。
(細かいですが、私個人的にはその方が好きです💦)

ディレクトリの整理ができたら、

% composer update

composerをアップデートします。
アップデートでエラーとなった場合は

% composer install
// それでもダメなら
% composer install --ignore-platform-reqs

で解決すると思います。

その後、

% sail up -d  //パスを通していない場合は→ ./vendor/bin/sail up

のコマンドで立ち上げてみてください。
問題がなければ http://127.0.0.1 にアクセルしてLaravelの初期画面がみれたら完了です。

問題がなければ push する

一応開発環境の構築が完了したタイミングでgit にpushしておきましょう。
後は開発を進めるだけ!!! 🎉

Discussion

ログインするとコメントできます