OpenResty XRay がどのようにしてアプリケーションの問題特定と効率化を支援するかをご覧ください。

詳細はこちら LIVE DEMO

OpenResty は nginx と LuaJIT をベースに構築された完全な Web プラットフォームです。nginx のスループットを犠牲にすることなく、Lua だけで高性能な Web アプリケーション、API ゲートウェイ、WAF を構築できます。新しいエッジノードのデプロイでも、標準の nginx からの移行でも、お使いの OS に OpenResty をインストールする信頼性の高い方法が必要です。

2 つの方法があります。パッケージマネージャーによるインストール(本番環境推奨)では、aptdnfapk を通じて署名済みかつテスト済みのバイナリと自動アップデートが得られます。ソースからのビルドは、カスタム nginx モジュール、非標準のインストールプレフィックス、またはビルド済みパッケージのないプラットフォームが必要な上級ユーザー向けです。

このページは両方のアプローチのハブです——すべての主要 Linux ディストリビューション、ARM64、Alpine、macOS をカバーする OpenResty インストールガイドです。下記からお使いのプラットフォームを選択するか、Ubuntu または Debian をお使いの場合はクイックスタートにジャンプしてください。OpenResty が動作したら、次のステップとして OpenResty チュートリアル → をおすすめします——Hello World から本番環境の Lua アプリケーションまでの 7 ステップ実践シリーズです。

対応プラットフォーム

OpenResty は以下のプラットフォーム向けに公式ビルド済みパッケージを提供しています。リストされたすべての Linux ディストリビューションは ARM64 / Aarch64 にも対応しています——各ガイドに記載されたアーキテクチャ固有のリポジトリ URL を使用してください。

プラットフォームバージョンステータス詳細ガイド
Ubuntu20.04, 22.04, 24.04✅ 対応Ubuntu に OpenResty をインストール →
Debian11, 12, 13✅ 対応Debian に OpenResty をインストール →
RHEL / Rocky / Alma / CentOS Stream7, 8, 9✅ 対応公式 RPM パッケージの手順を参照 →
ARM64 / Aarch64クロスディストロ✅ 対応下記 ARM64 セクション
Alpine Linux3.10 – 3.18✅ 対応下記 Alpine セクション
macOS (Homebrew)最新版✅ 対応下記 macOS セクション
ソースビルド任意の Linux / Unix✅ 対応下記ソースビルドセクション

Fedora、Amazon Linux、Rocky Linux、SUSE を含む対応ディストリビューションの完全なリストは、公式 Linux パッケージページをご覧ください。

クイックスタート

Ubuntu または Debian(amd64)に OpenResty をインストールする最速の方法は 5 つのコマンドです。以下の手順は Ubuntu 22.04 以降および Debian 11 以降で動作します。それ以前のリリースでは GPG キーの設定が若干異なる場合があります——詳細は完全な Ubuntu ガイドを参照してください。

ステップ 1 — 前提パッケージのインストール:

sudo apt-get -y install --no-install-recommends wget gnupg ca-certificates lsb-release

ステップ 2 — OpenResty GPG キーのインポート:

wget -O - https://openresty.org/package/pubkey.gpg | sudo gpg --dearmor -o /usr/share/keyrings/openresty.gpg

ステップ 3 — 公式 APT リポジトリの追加:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/openresty.gpg] https://openresty.org/package/ubuntu $(lsb_release -sc) main" \
    | sudo tee /etc/apt/sources.list.d/openresty.list > /dev/null

Debian の場合は、上記 URL の ubuntudebian に置き換えてください。ARM64 システムの場合は arm64/ubuntu または arm64/debian を使用してください——ARM64 セクションを参照。

ステップ 4 — パッケージインデックスの更新とインストール:

sudo apt-get update
sudo apt-get -y install --no-install-recommends openresty

ステップ 5 — サービスの起動と確認:

sudo systemctl start openresty
curl 127.0.0.1/

デフォルトの OpenResty ウェルカムページが表示されるはずです。スクリーンショットとオプションパッケージを含む完全なウォークスルーは、完全な Ubuntu インストールガイド → をご覧ください。

プラットフォーム別インストールガイド

Ubuntu (20.04 / 22.04 / 24.04)

OpenResty は現在のすべての Ubuntu LTS リリース向けに、amd64 と arm64 の両方で公式 APT リポジトリを提供しています。インストールプロセスは GPG キーのセットアップ、リポジトリ設定、パッケージインストール、そして restyrestydoc、OPM などのオプションツールをカバーします。

Ubuntu に OpenResty をインストール — 完全なステップバイステップガイド →

Debian (11 / 12 / 13)

Debian は Ubuntu とは別の専用 APT リポジトリを使用します。リポジトリは Bullseye (11)、Bookworm (12)、Trixie (13) を x86_64 と aarch64 の両アーキテクチャでサポートしています。

Debian に OpenResty をインストール — 完全なステップバイステップガイド →

RHEL / Rocky / Alma / CentOS Stream

RHEL ファミリーのディストリビューションは同じ YUM/DNF リポジトリモデルを使用します。公式の openresty.repo を有効にし、dnf install openresty でインストールします。CentOS 7/8/9、RHEL 7/8/9、Rocky Linux、AlmaLinux、Oracle Linux に対応しています。

公式 RPM パッケージの手順を参照 →

CentOS 8 固有のスクリーンショット付きウォークスルーは、旧版 CentOS 8 ガイドをご覧ください。

ARM64 / Aarch64

OpenResty は Ubuntu、Debian、およびすべての RPM ベースのディストリビューション(CentOS、RHEL、Rocky、Fedora)向けに専用の ARM64 パッケージリポジトリを提供しています。amd64 インストールとの唯一の違いはリポジトリ URL です。

Ubuntu (ARM64)

GPG キーのインポート後(amd64 と同じ)、ARM64 リポジトリを使用します:

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/openresty.gpg] https://openresty.org/package/arm64/ubuntu $(lsb_release -sc) main" \
    | sudo tee /etc/apt/sources.list.d/openresty.list > /dev/null
sudo apt-get update
sudo apt-get -y install openresty

Debian (ARM64)

codename=$(grep -Po 'VERSION="[0-9]+ \(\K[^)]+' /etc/os-release)

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/openresty.gpg] https://openresty.org/package/arm64/debian $codename openresty" \
    | sudo tee /etc/apt/sources.list.d/openresty.list
sudo apt-get update
sudo apt-get -y install openresty

CentOS / RHEL / Rocky / Fedora (ARM64)

RPM リポジトリのセットアップは x86_64 の手順と同一です——同じ openresty.repo ファイルが両方のアーキテクチャに対応します。RHEL ファミリーインストールガイドに従い、通常通り dnf install openresty を実行してください。DNF が自動的に正しい aarch64 パッケージを選択します。

Fedora の場合:

sudo dnf install -y dnf-plugins-core
sudo dnf config-manager --add-repo https://openresty.org/package/fedora/openresty.repo
sudo dnf install -y openresty

ARM64 対応ディストリビューションの完全なリストは、公式 Linux パッケージページをご覧ください。

Alpine Linux

Alpine は apt や dnf ではなく apk を使用します。まず、/etc/apk/repositories の community 行のコメントを解除して Alpine のコミュニティリポジトリを有効にします:

https://mirror.leaseweb.com/alpine/v3.18/community

ミラー URL とバージョン番号は環境により異なる場合があります。次に OpenResty リポジトリを追加します:

# リポジトリの署名に使用される公開鍵を追加
wget 'https://openresty.org/package/admin@openresty.com-5ea678a6.rsa.pub'
sudo mv 'admin@openresty.com-5ea678a6.rsa.pub' /etc/apk/keys/

# リポジトリを追加(MAJOR_VER をお使いの Alpine バージョンに合わせて調整)
. /etc/os-release
MAJOR_VER=$(echo $VERSION_ID | sed 's/\.[0-9]\+$//')

echo "https://openresty.org/package/alpine/v$MAJOR_VER/main" \
    | sudo tee -a /etc/apk/repositories

sudo apk update
sudo apk add openresty

オプションパッケージ:openresty-resty(CLI REPL)、openresty-opm(Lua モジュールマネージャー)、openresty-restydoc(ドキュメントブラウザ)。詳細は Linux パッケージ:Alpine をご覧ください。

macOS (Homebrew)

macOS では、Homebrew 経由での OpenResty インストールを推奨します:

brew install openresty/brew/openresty

以前 homebrew/nginx から nginx をインストールしていた場合は、先に brew untap homebrew/nginx を実行してください。macOS の完全なインストールおよびソースビルドの手順は、公式インストールページをご覧ください。

ソースからのビルド

ソースからのビルドにより、コンパイルオプションを完全に制御できます——カスタム nginx モジュール、デフォルト以外のプレフィックス、ビルド済みパッケージのないプラットフォームに対応します。基本的な手順は以下の通りです:

tar -xvf openresty-VERSION.tar.gz
cd openresty-VERSION/
./configure -j2 --with-pcre-jit --with-ipv6
make -j2
sudo make install
export PATH=/usr/local/openresty/bin:$PATH

VERSIONダウンロードページの最新リリース番号に置き換えてください。./configure --help ですべてのオプション(サードパーティ nginx モジュール用の --add-module=PATH を含む)を確認できます。

ビルドの前提パッケージを先にインストールしてください:

  • Debian / Ubuntu: sudo apt-get install libpcre3-dev libssl-dev perl make build-essential curl
  • RHEL / Fedora: sudo dnf install pcre-devel openssl-devel gcc curl zlib-devel

依存関係管理、configure オプション、トラブルシューティングを含む完全なソースビルドガイドは、公式インストールドキュメントをご覧ください。

インストールの確認

任意のプラットフォームで OpenResty をインストールした後、以下のチェックを実行してすべてが正常に動作していることを確認してください。このセクションはすべてのディストリビューションに適用されます——子ガイドは同じ手順を繰り返す代わりにここにリンクします。

バージョンの確認

openresty -V

このコマンドは OpenResty のバージョン、nginx のバージョン、有効なモジュールを表示します。nginx version: openresty/1.31.1.1 のような内容で始まる出力が表示されるはずです。

デフォルトサーバーの起動

sudo systemctl start openresty    # systemd ベースのディストロ
sudo openresty                    # Alpine または手動インストール

nginx ワーカープロセスが実行中であることを確認します:

ps aux | grep nginx

デフォルトホームページのテスト

curl 127.0.0.1/

成功すると、OpenResty ウェルカムページの HTML が表示されます。

オプションツールのインストール

ベースの openresty パッケージには CLI ユーティリティが含まれていません。同じリポジトリから個別にインストールしてください:

パッケージコマンド用途
openresty-restyresty -e 'print("Hello")'クイックスクリプティング用の Lua REPL
openresty-restydocrestydoc -s content_by_lua_fileターミナルで nginx/OpenResty ドキュメントを閲覧
openresty-opmopm get pintsized/lua-resty-httpコミュニティ Lua モジュールのインストール

Debian/Ubuntu での例:

sudo apt-get -y install openresty-resty openresty-restydoc openresty-opm
resty -e 'print("Hello Resty")'

RHEL ファミリーのシステムでは apt-get installdnf install に置き換えてください。Alpine では apk add openresty-resty openresty-opm openresty-restydoc を使用します。

起動時に自動起動を有効化

sudo systemctl enable openresty

OpenResty のアップグレード

インストール済みの全 OpenResty パッケージを最新バージョンにアップグレードするには:

Debian / Ubuntu:

sudo apt-get update
sudo apt-get --only-upgrade -y install 'openresty*'

RHEL / Rocky / Alma / CentOS:

sudo dnf check-update
sudo dnf upgrade 'openresty*'

Alpine:

sudo apk update
sudo apk upgrade openresty

FAQ

OpenResty は何に使いますか?

OpenResty は nginx をプログラマブルなアプリケーションサーバーに変えます。開発者はこれを使って、高性能な Web API、リバースプロキシ、ロードバランサー、WAF、CDN エッジノードを構築します——すべて Lua スクリプトで記述し、LuaJIT のネイティブに近い実行速度を活用します。Cloudflare や Taobao(淘宝)などの大手企業が OpenResty を大規模に利用しています。

OpenResty と Nginx は同じものですか?

いいえ。OpenResty はパッチ適用済みの nginx コアに LuaJIT と数十の Lua ライブラリ(lua-nginx-modulengx_lualua-resty-*)をバンドルしたものです。nginx のイベント駆動アーキテクチャに加えて、フルスクリプティングランタイムが得られます。openresty コマンドは nginx を置き換え、標準の nginx 設定と API 互換です。

OpenResty はどの Linux ディストリビューションに対応していますか?

OpenResty は Ubuntu、Debian、CentOS、RHEL、Rocky Linux、AlmaLinux、Fedora、Amazon Linux、Alpine、OpenSUSE、SUSE Linux Enterprise、Oracle Linux、および中国固有のいくつかのディストリビューション(Alibaba Cloud Linux、TencentOS)向けに公式ビルド済みパッケージを提供しています。これらのほとんどで x86_64 と ARM64/aarch64 の両方に対応しています。完全な対応マトリクスは Linux パッケージページをご覧ください。

OpenResty を最新バージョンにアップグレードするには?

パッケージマネージャーの更新コマンドを OpenResty パッケージに限定して実行します。Debian/Ubuntu:sudo apt-get update && sudo apt-get --only-upgrade -y install 'openresty*'。RHEL ファミリー:sudo dnf upgrade 'openresty*'。Alpine:sudo apk upgrade openresty。ソースビルドの場合は、最新の tarball をダウンロードして ./configure && make && sudo make install を再実行します。

このガイドが役に立ったら、このブログと YouTube チャンネルを購読して、より多くの OpenResty チュートリアルをご覧ください。

関連ガイド

著者について

章亦春(GitHub ハンドル: agentzh)は、OpenResty® オープンソースプロジェクトのオリジナル作成者であり、OpenResty Inc. の CEO です。

章亦春は「オープンソース技術」の最も初期の提唱者およびリーダーの一人です。Cloudflare や Yahoo! など、国際的に著名な複数のテック企業で勤務しました。「エッジコンピューティング」「動的トレーシング」「マシンコーディング」の先駆者であり、22 年以上のプログラミング経験と 16 年のオープンソース経験を持ちます。章亦春はオープンソース界で OpenResty® のプロジェクトリーダーとして広く知られており、同プロジェクトは全世界で 4,000 万以上のウェブサイトドメインに採用されています。

OpenResty Inc. は章亦春が 2017 年に設立したエンタープライズソフトウェアスタートアップで、世界最大級の企業を顧客に持ちます。フラッグシップ製品の OpenResty XRay は、動的トレーシング技術を大幅に強化・活用する非侵入型のプロファイリングおよびトラブルシューティングツールです。また、OpenResty Edge 製品は、強力な分散トラフィック管理およびプライベート CDN ソフトウェア製品です。

熱心なオープンソースコントリビューターとして、章亦春は Linux カーネル、Nginx、LuaJITGDBSystemTapLLVM、Perl など、数多くのオープンソースプロジェクトに 100 万行以上のコードを貢献しています。また、60 以上のオープンソースソフトウェアライブラリを開発しています。