PHP

CentOS7.2でPHP7.2をインストールしlaravel5.6を動かす

laravel
o_wani
この記事は作成から5年以上経過しているため、内容が古くなっている可能性があります。

CentOS7.2にPHP7.2をインストールし、フレームワークとしてlaravel5.6をインストールする。laravelにはHomesteadというオールインワンの仮想環境パッケージがあるが、今回はHomesteadを使用せずにlaravelの環境を構築する。

PHPのインストール

PHP7.2をインストール する。

EPELとRemiリポジトリ登録

CentOS7の標準では、PHPの最新版がインストールできないので、PHPの最新バージョンを扱う、Remiリポジトリを使う。

リポジトリ登録

$ sudo yum -y install epel-release
$ sudo yum -y install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

登録されたか確認する。

$ ls -l /etc/yum.repos.d/
合計 76
-rw-r--r--. 1 root root 1664 12月 9 2015 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 12月 9 2015 CentOS-CR.repo
-rw-r--r--. 1 root root 649 12月 9 2015 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 630 12月 9 2015 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 12月 9 2015 CentOS-Sources.repo
-rw-r--r--. 1 root root 1952 12月 9 2015 CentOS-Vault.repo
-rw-r--r--. 1 root root 290 12月 9 2015 CentOS-fasttrack.repo
-rw-r--r-- 1 root root 1050 10月 2 2017 epel-testing.repo
-rw-r--r-- 1 root root 951 10月 2 2017 epel.repo
-rw-r--r-- 1 root root 422 10月 1 2015 puppetlabs-pc1.repo
-rw-r--r-- 1 root root 446 6月 5 09:24 remi-glpi91.repo
-rw-r--r-- 1 root root 446 6月 5 09:24 remi-glpi92.repo
-rw-r--r-- 1 root root 446 6月 5 09:24 remi-glpi93.repo
-rw-r--r-- 1 root root 456 6月 5 09:24 remi-php54.repo
-rw-r--r-- 1 root root 1314 6月 5 09:24 remi-php70.repo
-rw-r--r-- 1 root root 1314 6月 5 09:24 remi-php71.repo
-rw-r--r-- 1 root root 1314 6月 5 09:24 remi-php72.repo
-rw-r--r-- 1 root root 750 6月 5 09:24 remi-safe.repo
-rw-r--r-- 1 root root 2605 6月 5 09:24 remi.repo

PHPインストール

PHPとlaravelに必要なミドルウェアのインストール。

$ sudo yum install --enablerepo=remi,remi-php72 php php-devel php-mbstring php-pdo php-xml php-zip1

PHPインストールの確認

PHPがインストールされたことを確認する。

$ php -v
PHP 7.2.6 (cli) (built: May 23 2018 09:50:51) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

composerのインストール

composerをインストールする。

$ curl -sS https://getcomposer.org/installer | php
All settings correct for using Composer
Downloading...
Composer (version 1.6.5) successfully installed to: /home/vagrant/composer.phar
Use it: php composer.phar

composerコマンド設置。今回はグローバルに使用するため。

$ sudo mv composer.phar /usr/local/bin/composer

composerがインストールされていることをコマンドで確認。

$ composer -v
______
/ ____/___ ____ ___ ____ ____ ________ _____
/ / / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__ ) __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
/_/
Composer version 1.6.5 2018-05-04 11:44:59

※コマンド設置が不要であれば、

$ php composer.phar

といった形でも使用できる。

プロジェクト作成

composerでlaravelのプロジェクト作成。これによりlaravelもインストールされる。

$ composer create-project --prefer-dist laravel/laravel ec-project
Installing laravel/laravel (v5.6.21)
Failed to download laravel/laravel from dist: The zip extension and unzip command are both missing, skipping.
Your command-line PHP is using multiple ini files. Run `php --ini` to show them.
Now trying to download from source
- Installing laravel/laravel (v5.6.21): Cloning 3f92cf66f
-

何やらエラーになる。unzipコマンドが無いと怒られる。
unzipをインストールする。

$ sudo yum install unzip

再度プロジェクトをつくって、進める。

$ composer create-project --prefer-dist laravel/laravel ec-project

問題なくできたようだ。

表示の確認

laravlはphp artisanでビルトインWebサーバを立ち上げることができるが、ポートを指定しないと、デフォルトでは8000番ポートを使用するので、Vagrant側の設定で8000番ポートをforwardしておく。

Vagrantfile

ここでVagrantfileの修正。8000番ポートをforwardする。

# Create a forwarded port mapping which allows access to a specific port
# within the machine from a port on the host machine. In the example below,
# accessing "localhost:8080" will access port 80 on the guest machine.
config.vm.network "forwarded_port", guest: 8000, host: 8000

※設定を修正した場合はvagrant reload

ビルトインWebサーバ起動

プロジェクトhomeに移動して、ビルトインWebサーバを起動。

$ cd ec-project
$ php artisan serve --host=0.0.0.0

確認

表示を確認できた。

http://127.0.0.1:8000またはhttp://localhost:8000

Alt text

STAFF
o_wani
o_wani
スタッフ
大学卒業後、15年間WEB業界で働く。現在はマネジメントに従事していますが、ChatGPTの登場に触発され、このブログを再開。AIをパートナーに、自分で手を動かして実装する楽しさと喜びを再発見中。時代が変わりつつある中でも、陳腐化しない情報発信も目指しています。
記事URLをコピーしました