🙆‍♀️

Web/APIサーバー開発環境構築のためのバージョン選定ガイド

2024/04/02に公開

まとめ

基本事項

ubuntu、Nginx、php-fpm、MySQL(またはAurora)、phpフレームワークはLaravelを使う

Ubuntu

偶数.04LTSを利用。

Nginx

Ubuntuが指定するバージョンを入れる。

php-fpm

Ubuntuが指定するバージョンを入れる。

Laravel

最新のLTSバージョンを使う、LTSバージョンがなければ最新

MySQL(Aurora)

Amazon RDSを利用する場合

AWSのコンソール上でデフォルトで選択されている、最新バージョンを使う

サーバー上で利用する場合(ローカル、Docker)

Ubuntuが指定するバージョンを入れる。

基本事項

ubuntu、Nginx、php-fpm、MySQL(またはAurora)、phpフレームワークはLaravelを使う
それ以外はここでは解説しないので敢えて逸脱するなら自分でガイドラインを作って運用をする

Ubuntu

Ubuntu kernel lifecycle and enablement stack | Ubuntu

偶数.04LTSを利用。
20.04LTSが2025年で終了、22.04LTSが2027年で終了というように5年間のサポートが2年刻みで選択可能です。

ちなみに、Expanded Security MaintenanceはUbuntu Proによるものなので、基本的に考慮しません。

Nginx

nginx: download

Introducing NGINX 1.18 and 1.19 - NGINX

Ubuntuが指定するバージョンを入れる。
事前にどのバージョンか知りたい場合

Ubuntu – Package Search Results -- nginx

suiteにubuntuのバージョンコードネームを入れる。(「特定のスイートに絞って検索」で切り替え可能)

Nginxの1.偶数バージョンは安定版と呼ばれ、新機能やバグ修正のためにメインラインブランチを監視するオーバーヘッドを懸念される場合に、新機能の確認は年に1回、バグ修正の確認は不定期で済むので利用できる。

1.22が2024年4月に終了し、1.24が2026年4月まで利用できます。

php-fpm

PHP: Supported Versions

Ubuntuが指定するバージョンを入れる。
事前にどのバージョンが知りたい場合

Ubuntu – Package Search Results -- php-fpm

suiteにubuntuのバージョンコードネームを入れる。(「特定のスイートに絞って検索」で切り替え可能)

Laravel

最新のLTSバージョンを使う、LTSバージョンがなければ最新
Laravel 9~11にはLTSサポートが無いので、基本的にはLaravel 11を使う。

Laravel - The PHP Framework For Web Artisans

MySQL(Aurora)

Amazon RDSを利用する場合

AWSのコンソール上でデフォルトで選択されている、最新バージョンを使う
MySQL:Amazon RDS での MySQL のバージョン - Amazon Relational Database Service

Aurora:Amazon Aurora バージョン - Amazon Aurora

サーバー上で利用する場合(ローカル、Docker)

MySQL :: MySQL Technical Support

https://www.oracle.com/us/assets/lifetime-support-technology-069183.pdf#page=30&zoom=100,68,72

MySQL :: Supported Platforms: MySQL Database

Ubuntuが指定するバージョンを入れる。
Ubuntu – Package Search Results -- mysql

Discussion