![[アップデート] Elastic BeanstalkでAmazon Linux 2ベースのNode.js、PHP、Go、Rubyプラットフォームの一般提供が開始されました](https://devio2023-media.developers.io/wp-content/uploads/2019/05/aws-elastic-beanstalk.png)
[アップデート] Elastic BeanstalkでAmazon Linux 2ベースのNode.js、PHP、Go、Rubyプラットフォームの一般提供が開始されました
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
以前より、ロードマップにてAmazon Linux 2のサポートが進んでいましたが、一気に4つの言語でGA開始となりました。
PHPアプリケーションで試してみる
業務の都合で個人的に首を長くして待っていたのがPHPプラットフォームのサポートだったので、PHPで試してみたいと思います。
今回はコンソールから作ります。「プラットフォームのブランチ」にAmazon Linux2を選択することができます。最新の「PHP7.4 runnning on 64bit Amazon Linux 2」を選択します!

「プラットフォームのブランチ」のプルダウンを見ると、「PHP7.2」「PHP7.3」「PHP7.4」がAmazon Linux2で利用できます。以前まで提供されていたベータ版、deprecatedとなった旧バージョンも表示されています。

サンプルアプリケーションの作成が完了すると、プラットフォームの表示でPHP7.4、Amazon Linux2を確認できます。メニューの「環境に移動する」というリンクをクリックしてアプリケーションを確認してみましょう。

サンプル画面が表示できました。

サーバ内部を確認してみる
サーバにログインしてもう少し見てみます。
下記はpstreeの結果です。WebサーバはApacheではなくnginxに変わっています。
systemd─┬─acpid
├─2*[agetty]
├─amazon-ssm-agen───6*[{amazon-ssm-agen}]
├─atd
├─chronyd
├─crond
├─dbus-daemon
├─2*[dhclient]
├─gssproxy───5*[{gssproxy}]
├─lsmd
├─lvmetad
├─master─┬─pickup
│ └─qmgr
├─nginx───nginx
├─php-fpm───5*[php-fpm]
├─python───3*[{python}]
├─rngd
├─rpcbind
├─rsyslogd───2*[{rsyslogd}]
├─ruby───10*[{ruby}]
├─sshd───sshd───sshd───bash───pstree
├─systemd-journal
├─systemd-logind
└─systemd-udevd
yumコマンドで各種パッケージの詳細を見てみましょう。
PHPは7.4.4がインストールされていました。
Name : php Arch : x86_64 Version : 7.4.4 Release : 1.amzn2 Size : 3.2 M Repo : amzn2extra-php7.4/2/x86_64 Summary : PHP scripting language for creating dynamic web sites URL : http://www.php.net/ License : PHP and Zend and BSD and MIT and ASL 1.0 Description : PHP is an HTML-embedded scripting language. PHP attempts to make it : easy for developers to write dynamically generated web pages. PHP also : offers built-in database integration for several commercial and : non-commercial database management systems, so writing a : database-enabled webpage with PHP is fairly simple. The most common : use of PHP coding is probably as a replacement for CGI scripts. : : The php package contains the module (often referred to as mod_php) : which adds support for the PHP language to Apache HTTP Server. This : is not the supported way of running PHP, the php-fpm package should be : used instead.
Name : php-fpm Arch : x86_64 Version : 7.4.4 Release : 1.amzn2 Size : 6.1 M Repo : installed From repo : amzn2extra-php7.4 Summary : PHP FastCGI Process Manager URL : http://www.php.net/ License : PHP and Zend and BSD and MIT and ASL 1.0 Description : PHP-FPM (FastCGI Process Manager) is an alternative PHP FastCGI : implementation with some additional features useful for sites of : any size, especially busier sites.
その他にインストールされていたPHP関連パッケージです。
php-xml-7.4.4-1.amzn2.x86_64 php-bcmath-7.4.4-1.amzn2.x86_64 php-gd-7.4.4-1.amzn2.x86_64 php-pdo-7.4.4-1.amzn2.x86_64 php-odbc-7.4.4-1.amzn2.x86_64 php-soap-7.4.4-1.amzn2.x86_64 php-json-7.4.4-1.amzn2.x86_64 php-cli-7.4.4-1.amzn2.x86_64 php-process-7.4.4-1.amzn2.x86_64 php-fpm-7.4.4-1.amzn2.x86_64 php-devel-7.4.4-1.amzn2.x86_64 php-intl-7.4.4-1.amzn2.x86_64 php-mbstring-7.4.4-1.amzn2.x86_64 php-mysqlnd-7.4.4-1.amzn2.x86_64 php-opcache-7.4.4-1.amzn2.x86_64 php-pgsql-7.4.4-1.amzn2.x86_64 php-xmlrpc-7.4.4-1.amzn2.x86_64 php-sodium-7.4.4-1.amzn2.x86_64 php-common-7.4.4-1.amzn2.x86_64 php-pear-1.10.7-3.amzn2.0.1.noarch
composerは1.9.3となっていました。
composer.phar -V Composer version 1.9.3 2020-02-04 12:58:49
Nginxは1.16.1のバージョンです。
Name : nginx Arch : x86_64 Epoch : 1 Version : 1.16.1 Release : 1.amzn2.0.1 Size : 1.6 M Repo : installed From repo : amzn2extra-nginx1 Summary : A high performance web server and reverse proxy server URL : http://nginx.org/ License : BSD Description : Nginx is a web server and a reverse proxy server for HTTP, SMTP, POP3 and : IMAP protocols, with a strong focus on high concurrency, performance and low : memory usage.
他の言語のプラットフォームについては、下記に一覧が記載されているのでご確認ください。
最後に
Amazon Linuxのサポート切れが間近になる中で、メジャーな言語がサポートされました。 これで新しいプラットフォームへの更新が進めやすくなったかと思いますので、ぜひともご検討ください。
以上です。






