Laravelの環境を構築するまで頑張る – CentOSに乗り換え(PHP導入まで)

PHP

前置き

前回、Laravelの動作が確認できるところまで行いました。

Laravelの環境を構築するまで頑張る – Laravel動作確認まで
前置き 前回の記事でPHPが動くようにXAMPPを利用して環境構築を行いました。 今回はその続きとして、Laravelの画面を出すところまでやります。 手順 Composer まずLaravelの導入に必須となるComposerとい...

 

前回は、

Laravelの構築としては終わりですが、私個人は元々読んでた書籍でLaravelがサンプルだったのでやってきたので、そちらの学習を進めます。

なんて最後に書いていましたが、いざ書籍を読み直してみるとPHPとLaravelのバージョンが厳密に指定してあり、バージョンが違うと動かないかもしれない旨まで記載してあるではありませんか。

多少のバージョン違いなら何とかなるかもとも思ったのですが、巷の噂(いわゆるTwitter)でPHPはバージョンが違うとまともに動かなくなるような機能も多いとも聞いたことがあります。

書籍の指定するPHPのバージョンは7.2で自身の入れたPHPは8.1、メジャーバージョンすら違うのでこのまま進めるのは結構怖いです。

というわけで、PHPなどのバージョンを揃えて環境構築を行うことを決心しました。

ただXAMPPでPHPのバージョンを切り替えるのは面倒臭そうなことも分かってきたので、Linuxの仮想マシンでやってしまおうと方向転換をすることにしました。

そんなわけて、Laravelの環境構築 ~VirtualBox + Vagrant の仮想Linux環境への構築編~ が始まったわけです。

とりあえず本記事では、WindowsでのLaravel導入第1段階目と同じ、ApachePHPを使えるようにするところまで行います。

↓ 参考書籍です

手順

仮想マシンの準備

書籍ではAWSのEC2を用いて説明がなされていましたが、AWSはまだ契約する気が無いので、Amazon Linux 2のディストリビュージョンと同じ(と推定される)ものであるCentOSの仮想マシンを立てることにします。(使ったこと無いです・・・)

Windows11でwingetを使ってVagrantとDockerの環境構築
前置き仮想環境を使ってネットワークのおべんきょをしたかったので、DockerとVagrantを使える環境を構築して仮想マシンとコンテナを使えるようにします。所持しているPCの1台目(Windows10)は、過去にDocker Desktop...

過去記事の仮想マシンの環境構築を行っている想定ですすめます。

同期時の動作確認の項での作業をUbuntuではなくCentOSで行います。

  1. 上記の通りやっていれば、Documents\Vagrant\のフォルダがあるかと思いますので、そこにlaravel_sampleというフォルダを作成します
    mkdir laravel_sample
    
  2. 作成したフォルダに入ります
    cd laravel_sample
    
  3. CentOSのVagrant Boxを落としてVagrantfileを作成します
    vagrant init centos/7
    
  4. Vagrantfileの下記設定をコメントアウトから復活させておくと後々、接続しに行く時にアクセスしやすいです
    config.vm.network "forwarded_port", guest: 80, host: 8080, host_ip: "127.0.0.1"
  5. 起動します
    vagrant up
    

VS CodeとVagrantの接続

通常はこの後、vagrant sshを使ってCentOSに接続していきますが、Laravelの開発を行うことを考えるとIDEを使ってリモートSSHをやったほうが都合が良さそうなので、そのあたりの設定を行いながら進めていきます。

  1. VS Codeの拡張機能で、[Remote Development]をインストール
  2. [リモートエクスプローラ]というアイコンがサイドバーに追加されるので開き、ドロップダウンで[SSHターゲット]を選択する
  3. 歯車アイコン(構成する)をクリックすると、Configファイルを作る場所を聞かれるので、[<ユーザーディレクトリ>\.ssh\config]を選択
  4. SSH接続のために必要な情報を入力するが、Vagrantにおいては、ターミナルに以下のコマンドを入力すると、その仮想マシンの接続情報を表示してくれる
    vagrant ssh-config
    
  5. 表示情報の中から、[HostName], [User], [Port], [IdentityFile]の情報をそれぞれコピペする([Host]はリモートエクスプローラの表記なので、なんでもOK)
  6. 保存するとリモートエクスプローラにターゲットが表示されるので、現行IDEか新規IDEの好きな方で接続を開始する
  7. [linux] → [続行する]
  8. 接続が完了すれば、VS CodeでのCentOS編集が可能になる
    1. ディレクトリを視覚的に見れるので便利
    2. 内部ターミナルもそのまま使える

Apacheのインストール

Linuxなので、難しいことは考えずにガンガンインストールしていきます。

  1. Apacheをyumでインストール
    sudo yum -y install httpd
    
  2. インストールされたかをチェック
    sudo yum list installed | grep httpd
    
  3. インストールパスを確認(恐らく[/usr/sbin/httpd])
    which httpd
    
  4. Apacheの起動
    sudo systemctl start httpd
    
  5. 接続確認のため、ブラウザで[localhost:8080]にアクセス
  6. 次からは、仮想マシン起動時に自動起動したいので以下のコマンドを入力
    sudo systemctl enable httpd
    

Git, MySQL, Vimのインストール

仮想環境のLinuxですし、書籍でDBの接続等もサンプルがあるようなので、ついでにこれらもインストールします。

Git

sudo yum -y install git

MySQL

sudo yum -y install mysql

クライアント側のMySQLパッケージです。

MySQL本体は、別途用意するか下記の記事のように同じ仮想マシンにインストールしても構いません。

Laravelの環境を構築するまで頑張る – データベースの接続
前置き 前回は、Laravelの導入が完了しました。 参考書籍のサンプルではLaravelを入れて終わりではなく、MySQLによるデータベースも用意するので、今回はそれを行っていきます。 (function(b,c,f,g,a,d...

※ 記事が完成したらリンクします。

Vim

sudo yum -y install vim

PHP7.2のインストール

CentOSにバージョンを指定しながらPHPをインストールするためのポピュラーな方法には、Remiという方が提供するRemiリポジトリからインストールすると良いそうです。

普通にインストールすると、PHP 5.4とかが入るらしいです

EPEL

Remiリポジトリをインストールするために必要なリポジトリ(面倒だな・・・)

sudo yum -y install epel-release

Remi

Remiリポジトリのインストール

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

リポジトリの確認

ls -l /etc/yum.repos.d/

以下のものがPHP7.2

-rw-r–r–. 1 root root 1314 Sep 2 09:05 remi-php72.repo

PHP

インストール

sudo yum -y install --enablerepo=remi,remi-php72 php

そしてバージョン確認

php -v

7.2ならOK

最後に

行ったり来たりするのもソフトウェア開発の醍醐味ですよね

少なくとも知識はつくはず

 

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