PHP7.4 から PHP8.1 へのアップデートデモ

  •  
 
funada2023年2月9日 - 17:43 に投稿

作業内容

PHPのバージョンを7.4から8.1にアップデートする際、確認のため仮想環境で一度デモを行ったので、その手順をメモしておく。 大まかな作業内容は以下の通り。

  • DockerでLinux環境を構築
  • PHP7.4をインストール
  • PHP7.4をアンインストール
  • PHP8.1をインストール

調査結果

下記の手順で行った。

1. Linux環境を構築する

1.1 Dockerイメージを取得する

docker pull centos:centos7

■参考:https://www.sejuku.net/blog/86137

1.2 platformを指定しDockerコンテナを起動する

docker run -it -d --platform linux/amd64 --name centos7 centos:centos7

1.3 x86_64である事を確認

uname -m
x86_64

■参考:https://ufirst.jp/memo/2020/12/post-2777/

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

2.1 remiリポジトリをインストール

yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

■参考:https://www.hiroski.com/2020/04/202004-php74-install.html

2.2 epel設定ファイルを変更する

vi /etc/yum.repos.d/epel.repo

metalinkの行をコメントアウトし、baseurlをコメントイン

baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
#metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch

■参考:https://chusotsu-program.com/cannot-retrieve-metalink/

2.3 php関連パッケージをインストール(php7.4)

yum -y install --enablerepo=remi,remi-php74 php php-mbstring php-xml php-xmlrpc php-gd php-pdo php-pecl-mcrypt php-mysqlnd php-pecl-mysql
# php -v
PHP 7.4.33 (cli) (built: Dec 19 2022 13:32:43) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies

■参考:https://www.hiroski.com/2020/04/202004-php74-install.html

2.4 インストール済みのphp関連パッケージを確認

# yum list installed | grep php
gd3php.x86_64                      2.3.3-7.el7.remi             @remi           
oniguruma5php.x86_64               6.9.8-1.el7.remi             @remi           
php.x86_64                         7.4.33-2.el7.remi            @remi-php74     
php-cli.x86_64                     7.4.33-2.el7.remi            @remi-php74     
php-common.x86_64                  7.4.33-2.el7.remi            @remi-php74     
php-gd.x86_64                      7.4.33-2.el7.remi            @remi-php74     
php-json.x86_64                    7.4.33-2.el7.remi            @remi-php74     
php-mbstring.x86_64                7.4.33-2.el7.remi            @remi-php74     
php-mysqlnd.x86_64                 7.4.33-2.el7.remi            @remi-php74     
php-pdo.x86_64                     7.4.33-2.el7.remi            @remi-php74     
php-pecl-mcrypt.x86_64             1.0.5-1.el7.remi.7.4         @remi-php74     
php-pecl-mysql.x86_64              1.0.0-0.23.20190415.d7643af.el7.remi.7.4
                                                                @remi-php74     
php-sodium.x86_64                  7.4.33-2.el7.remi            @remi-php74     
php-xml.x86_64                     7.4.33-2.el7.remi            @remi-php74     
php-xmlrpc.x86_64                  7.4.33-2.el7.remi            @remi-php74  

3. PHPを8.1にアップデートする

3.1 php関連パッケージを全てアンインストール

yum remove -y php-*

■参考:http://psychedelicnekopunch.com/archives/2763

# yum list installed | grep php
gd3php.x86_64                         2.3.3-7.el7.remi          @remi           
oniguruma5php.x86_64                  6.9.8-1.el7.remi          @remi  

3.2 php関連パッケージをインストール(php8.1)

yum -y install --enablerepo=remi,remi-php81 php php-fpm php-devel php-cli php-common php-mbstring php-mysqlnd php-pear php-tcpdf php-mcryptphp-process php-pdo php-bcmath php-xml php-gd php-recode php-pecl-msgpack php-pecl-memcached
# php -v
PHP 8.1.13 (cli) (built: Nov 22 2022 14:42:07) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.13, Copyright (c) Zend Technologies

メモ

php -m でインストール済みのPHP関連モジュール一覧を確認できる。 PHP7.4 → PHP8.1の更新時に漏れてしまった機能がないかチェックする際の参考に。

コメントを追加

プレーンテキスト

  • HTMLタグは利用できません。
  • 行と段落は自動的に折り返されます。
  • ウェブページのアドレスとメールアドレスは自動的にリンクに変換されます。
CAPTCHA
この質問はあなたが人間の訪問者であるかどうかをテストし、自動化されたスパム送信を防ぐためのものです。