2021/12/08
Laravel ローカル環境構築(Docker)シリーズです。
前回は Laravel のDB設定を行い、phpMyAdmin で確認しました。
Laravelローカル環境構築(Docker その② ~ DB設定+phpMyAdmin ~)
今回はその続きで Laravel の認証機能(Auth)を入れてみます。
Laravel6 系では認証機能の実装には事前に Node.js のインストールをしておいて NPMコマンドが使える状態でないと実装できません。
今回のゴール
手順
1)Dockerfileの修正
Node.jsをインストールする記述を、以前記述した Dockerfile に追記します。
composer をインストールするコマンドの下に Node.js をインストールするコマンドを追記します。
「はじめてのVPSシリーズ」にあわせてNode.jsバージョン12系をインストールします。
:
# Composerのインストール
# RUN:コンテナ内でコマンド実行する
RUN cd /usr/bin && curl -s http://getcomposer.org/installer | php && ln -s /usr/bin/composer.phar /usr/bin/composer
# Node.jsをインストール
RUN curl -sL https://deb.nodesource.com/setup_12.x | bash -
RUN apt-get install -y nodejs
:
2)Dockerfileの変更を反映
今回は Dockerfile を修正したので docker-compose build
コマンドを実行して反映させます。
Docker Composeにおける各種ファイルの変更時の反映については、前回の記事の「事前知識」にてまとめています。
$ docker-compose build
3)Node.jsの確認
先ほどのコマンドによってイメージを再構築しました。
次はコンテナの再構築をします。
# コンテナの再構築
$ docker-compose up -d
以下のコマンドで Laravel のコンテナ(名称:laravel_app)に入り、Node.jsのバージョンを確認してみましょう。
# appコンテナ(名称:laravel_app)に入ります
$ docker-compose exec app bash
# 以下のコマンドを実行すると Node.js のバージョンが確認できます。
$ node -v
4)Laravel認証機能(Auth)の実装
# Laravelプロジェクトに移動
$ cd laraveltokyo
#-------------------------------------------------
# laravel/uiライブラリをインストール
#-------------------------------------------------
# Laravel6の場合
$ composer require laravel/ui:^1.0 --dev
# Laravel7の場合
$ composer require laravel/ui:^2.4
#-------------------------------------------------
# ログイン機能&テーブル作成
#-------------------------------------------------
$ php artisan ui vue --auth
#-------------------------------------------------
# フロントエンドに必要なパッケージをインストール
#-------------------------------------------------
$ npm install
#-------------------------------------------------
# CSS/JSを作成ビルド
#-------------------------------------------------
$ npm run dev
5)動作確認
http://127.0.0.1 にアクセス。
上記のような画面になればOKです。
以上です。
Docker学習 おススメ教材(by Udemy)
動画でプログラミング学習!ドットインストール、Schoo、Udemyのどれがいい?
Udemyを使ったLaravel学習方法
Udemyを使ったLaravel学習方法
ゼロからはじめる Dockerによるアプリケーション実行環境構築
コンテナの実行方法を学び、Ruby on RailsやDjangoといったWebアプリケーションフレームワークを使用した環境構築について学びます。Docker MachineやSwarmといったDocker関連技術についても学びます。
4.2(3552)
仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら。