「広告」

Laravel9 のインストールと、AdminLTE の初期設定まで

「広告」
記事内に広告が含まれています。
「広告」

laravel9 とAdminLTEの初期設定までを行います。

Nginx / php8.1 / MySQL 8.0 の設定は、↓この記事をご参考に

RcockyLinux9.3 Nginx1.25 PHP8.1 MySQL8.0 LetsEncrypt
PHP MySQLなど、基本設定 今回は、Conoha VPSで、構築してみました。 RockyLinux バージョン # cat /etc/os-release NAME="Rocky Linux" VERSION="9.3 (Blue ...

 

「広告」

仮想ユーザの追加

# /usr/sbin/adduser larauser
# chomod 755 /home/larauser
# su - larauser
$

↑仮想ユーザを追加して、そのユーザになります。

「広告」

composer インストール

$ mkdir bin
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php composer-setup.php --install-dir=bin --filename=composer
All settings correct for using Composer
Downloading...

Composer (version 2.7.2) successfully installed to: /home/larauser/bin/composer
Use it: php bin/composer

↑ 追加したユーザの下に「bin」ディレクトリを作成します。(bin でなくてもいいです)

その bin 以下に、composerを入れます。

$ ./bin/composer -v
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 2.7.2 XXXX-XX-XX XX:XX:XX

↑ composer の、2.7.2 が入りました。

$ php -r "unlink('composer-setup.php');"

↑ セットアップファイルを削除します。

「広告」

laravel9 のインストール

$ bin/composer create-project "laravel/laravel=9.*" larasite01
Creating a "laravel/laravel=9.*" project at "./larasite01"
Installing laravel/laravel (v9.5.2)
- Downloading laravel/laravel (v9.5.2)
- Installing laravel/laravel (v9.5.2): Extracting archive
Created project in /home/larauser/larasite01
> @php -r "file_exists('.env') || copy('.env.example', '.env');"
Loading composer repositories with package information
Updating dependencies

(略)

> @php artisan package:discover --ansi

INFO Discovering packages.

laravel/sail .................................................... DONE
laravel/sanctum ................................................. DONE
laravel/tinker .................................................. DONE
nesbot/carbon ................................................... DONE
nunomaduro/collision ............................................ DONE
nunomaduro/termwind ............................................. DONE
spatie/laravel-ignition ......................................... DONE

86 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force

INFO No publishable resources for tag [laravel-assets].

No security vulnerability advisories found.
> @php artisan key:generate --ansi

INFO Application key set successfully.
$ cd larasite01/
$ php artisan --version
Laravel Framework 9.52.16

↑「larasite01」というディレクトリに、laravel 9.52.16 が入りました。

「広告」

laravel用DB設定

# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.36 Source distribution

Copyright (c) 2000, 2024, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.01 sec)

mysql> create database lara01 character set utf8mb4;
Query OK, 1 row affected (0.01 sec)

mysql> create user 'lara01'@'localhost' identified by '(パスワード)';
Query OK, 0 rows affected (0.02 sec)

mysql> grant all privileges on lara01.* to 'lara01'@'localhost';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

↑「lara01」というユーザ名、「lara01」というデータベースを作成しました。

$ pwd
/home/larauser/larasite01
$ vi .env


DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=lara01
DB_USERNAME=lara01
DB_PASSWORD=(パスワード)

↑「larasite01」というディレクトリの「.env」というファイルに、設定したDB情報を記述します(変更します)。

$ php artisan migrate

Error

Class "PDO" not found

↑DBを設定しようとすると、エラーになりました。

# yum install php-pdo

(略)

Installed:
php-pdo-8.1.27-1.module+el9.3.0+16050+d5cd6ed5.x86_64

Complete!

↑「php-pdo」を入れます。

 

$ php artisan migrate

Illuminate\Database\QueryException

could not find driver (SQL: select * from information_schema.tables where table_schema = lara01 and table_name = migrations and table_type = 'BASE TABLE')

↑再度、エラーになってしまいました。

#dnf install php-mysqlnd

(略)

Installed:
php-mysqlnd-8.1.27-1.module+el9.3.0+16050+d5cd6ed5.x86_64

Complete!

↑「php-mysqlnd」を入れます。

$ php artisan migrate

INFO Preparing database.

Creating migration table .................................. 21ms DONE

INFO Running migrations.

2014_10_12_000000_create_users_table ...................... 29ms DONE
2014_10_12_100000_create_password_resets_table ............ 35ms DONE
2019_08_19_000000_create_failed_jobs_table ................ 26ms DONE
2019_12_14_000001_create_personal_access_tokens_table ..... 39ms DONE

↑うまく、DBが設定されました。

「広告」

AdminLTE 設定

$ bin/composer require jeroennoten/laravel-adminlte
Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version
./composer.json has been updated
Composer could not detect the root package (laravel/laravel) version, defaulting to '1.0.0'. See https://getcomposer.org/root-version
Running composer update jeroennoten/laravel-adminlte
Loading composer repositories with package information
Updating dependencies

(略)

86 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force

INFO No publishable resources for tag [laravel-assets].

No security vulnerability advisories found.
Using version ^3.11 for jeroennoten/laravel-adminlte

 

$ php artisan adminlte:install
Basic assets installed successfully.
Configuration file installed successfully.
Translation files installed successfully.
The installation is complete.

↑「AdminLTE」がインストールされました。

$ php artisan adminlte:status
Checking the resources installation ...
7/7 [■■■■■■■■■■■■] 100%
All resources checked succesfully!

+------------------+------------------------------------------+---------------+----------+
| Package Resource | Description | Status | Required |
+------------------+------------------------------------------+---------------+----------+
| assets | The AdminLTE required assets | Installed | true |
| config | The default package configuration file | Installed | true |
| translations | The default package translations files | Installed | true |
| main_views | The default package main views | Not Installed | false |
| auth_views | The default package authentication views | Not Installed | false |
| basic_views | The default package basic views | Not Installed | false |
| basic_routes | The package routes | Not Installed | false |
+------------------+------------------------------------------+---------------+----------+

↑「AdminLTE」のインストール状態を確認します。

「広告」

laravel 調整

# cd larasite01/
# chmod -R 777 ./storage/
# chmod -R 777 ./bootstrap/cache/

↑パーミッションを調整します。

$ vi config/app.php


'timezone' => 'UTC',
 ↓
'timezone' => 'Asia/Tokyo',

'locale' => 'en',
 ↓
'locale' => 'ja',

'fallback_locale' => 'en',
 ↓
'fallback_locale' => 'ja',

'faker_locale' => 'en_US',
 ↓
'faker_locale' => 'ja_JP',

↑環境を日本語にします。

「広告」

WEB設定

/home/larauser/larasite01/public

を、rootにwebを設定します。


↑のような画面が出てきます。

「広告」

現状のWEBページ

$ vi routes/web.php


Route::get('/', function () {
return view('welcome');
});

と、書かれています。

https://(FQDN)/にアクセスすると、「welcome」のviewにアクセスがなされます。

「welcomeのview」とは

resources/views/welcome.blade.php

のファイルになります。

上記のphpファイルを変更すれば、

https://(FQDN)/
の内容が変更されます。

「広告」

トップをAdminLTEに変更

$ vi resources/views/top.blade.php

@extends('adminlte::page')

@section('title', 'Dashboard')

@section('content_header')
<h1>ダッシュボード</h1>
@stop

@section('content')
<p>ここがコンテンツ部分です</p>
@stop

@section('css')
{{-- ページごとCSSの指定
<link rel="stylesheet" href="/css/xxx.css">
--}}
@stop

@section('js')
<script> console.log('ページごとJSの記述'); </script>
@stop

↑「top.blade.php」の内容を上記にします。

$ vi routes/web.php

Route::get('/', function () {
return view('welcome');
});

  ↓

Route::get('/', function () {
return view('top');
});

↑「web.php」、「welcome」を「top」に変更します。

↑上記のように、https://(FQDN)/ が、AdminLTEのデザイン画面になります

 

 

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