0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Windows] DockerでLaravel開発環境を構築

Last updated at Posted at 2024-10-14

Dockerを学ぶべきか

  • 導入現場は50%未満くらい。でもモダンな開発現場だともっと高い
  • 便利だし、技術的加点にもなるので学ぶのはオススメ

Dockerとは

Dockerは、コンテナ技術を利用してアプリケーションを効率的にデプロイ、スケール、および管理するためのプラットフォームです。Dockerは、ソフトウェアを「コンテナ」と呼ばれる独立したユニットにパッケージ化します。このコンテナは、アプリケーションコード、ランタイム、ライブラリ、および依存関係をすべて含んでおり、どの環境でも一貫して動作します

例えば

複数人で開発する際に、メンバー間や本番環境で、開発環境(PHPのバージョンやDB、OS等)が異なると上手く動かない。
→ Dockerを使えば、コンテナにまとめて同じ環境を渡すことで簡単に環境を揃えることができる!

重要な5つの用語

  1. Dockerイメージ
    コンテナという料理を作るために必要なレシピのようなもの
  2. Dockerコンテナ
    PCの中で動く仮想環境の空間。この中にプリケーションを動かす環境を作る
  3. Dockerレポジトリ
    Dockerのイメージが並んでいる棚。Webプラットフォーム
    ここから必要なものをとってきてイメージを定義する
  4. Docker Compose
    複数のDockerコンテナを1度に操作できるツール。
    複数コンテナを作り、それらを連携しながらアプリケーションを作っていく
  5. Dockerボリューム
    データを入れて保存しておける領域。データを永続化・コンテナ間で共有できる
    Docker用語.png

今回は、比較的手軽に環境構築できる「Laravel Sail」を使う

Laravel Sailとは、ターミナルでコマンド実行するだけで、DockerでLaravel環境を一発で作ってくれる便利なコマンドラインツール。

  • 事前にDocker をインストールする必要がある
  • さらにWindowsの場合は「WSL」というLinux実行環境も必要

→詳細はこちら

環境構築手順

※環境:Windows、Laravel10

  1. WSL(Windows上でLinuxを動作させるための実行環境)の導入

  2. Docker Desktopのインストールし、起動

  3. Laravel Sailをインストール
    3-1. Laravelの公式サイトを開く
    3-2. Installation > Sail on Windowsの箇所に記載されているコマンドをコピー(プロジェクト名は適宜変更)

curl -s https://laravel.build/プロジェクト名 | bash →これだと最新バージョンになってしまう

例)Laravel 10を指定する場合(PHP 8.1以上あることが前提)
composer create-project laravel/laravel プロジェクト名 --prefer-dist "10.*"

3-3. Ubuntuを開き、ホームディレクトリ(home\ユーザ名)に移動
3-4. 上記コマンドでLaravelプロジェクトを作成
 → プロジェクトの作成が始まるのでしばらく待つ

  1. 下記コマンドで、Laravel Sailを使用してDockerコンテナを起動
./vendor/bin/sail up
  1. http://localhost/ にアクセスしてLaravel起動画面が表示されていれば成功

【番外編】Breezeでログイン画面を簡単に作成

Breezeライブラリのインストール

./vendor/bin/sail composer require laravel/breeze --dev

プロジェクトにBreeze(認証機能など)を導入

./vendor/bin/sail artisan breeze:install

日本語化

参考リンク一覧

0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?