コンテンツにスキップ

言語サポートとツール

Cloudflare Pagesのビルド環境は、Ruby、Node.js、Python、PHP、Goなど、さまざまな言語を広くサポートしています。

特定の言語のバージョンを使用する必要がある場合(たとえば、Node.jsやRuby)、ビルド構成で関連する環境変数を指定するか、ソースコード内の関連ファイルを設定することで指定できます。

V2ビルドシステム

2023年5月に発表されたv2ビルドシステムは、プロジェクトビルドにいくつかの改善をもたらします。この新しいバージョンに移行するには、ダッシュボードでPagesプロジェクトの設定を構成します:

  1. Cloudflareダッシュボードにログインし、アカウントを選択します。
  2. Workers & Pages > 概要で、Pagesプロジェクトを選択します。
  3. 設定 > ビルドとデプロイ > ビルドシステムバージョンに移動し、最新のバージョンを選択します。

特に、含まれる言語とツールのデフォルトバージョンに変更を加えました。v2の選択、欠落しているツールや言語、またはv2への移行時に発生している問題についてフィードバックを送信するには、Cloudflare Developer Discordに参加してください。

以前にビルドシステムのデフォルトバージョンの言語やツールに依存していた場合、v2に移行するとビルドが失敗する可能性があります。これを修正するには、使用したいバージョンを指定する必要があります。これらの言語やツールごとの詳細はこのページで確認できます。たとえば、v1ビルドシステムのデフォルトバージョンのNode.jsに依存していた場合、v2に移行するには、NODE_VERSION環境変数を設定するか、プロジェクトに.node-versionまたは.nvmrcファイルを追加してNode.js 12.18.0が必要であることを指定する必要があります。

v2ビルドシステムには、修正予定のいくつかの未解決の問題があることを認識しています:

  • Node.jsのバージョンをコードネーム(たとえば、hydrogenlts/hydrogen)として指定すること。
  • yarn.lockファイルのバージョンからYarnのバージョンを検出すること。
  • pnpm-lock.yamlファイルのバージョンに基づいてpnpmのバージョンを検出すること。
  • package.json"engines"からNode.jsとパッケージマネージャーを検出すること。
  • pipenvPipfileのサポート。

サポートされている言語とツール

以下の表で、Cloudflare Pagesビルド環境に含まれるツールのプリインストールされたバージョンと、それをオーバーライドする方法を確認してください:

Tool Default version Supported versions Environment variable File
Go 1.21.0 Any version GO_VERSION
Node.js 18.17.1 Any version NODE_VERSION .nvmrc, .node-version
Python 3.11.5 Any version PYTHON_VERSION .python-version, runtime.txt
Ruby 3.2.2 Any version RUBY_VERSION .ruby-version

多くの一般的なツールは、Cloudflare Pagesビルド環境にプリインストールされています。プリインストールされたバージョンをオーバーライドするために利用可能な環境変数は、以下の表に指定されています:

Tool Default version Supported versions Environment variable
Bundler 2.4.10 Corresponds with Ruby version
Embedded Dart Sass 1.62.1 Up to 1.62.1 EMBEDDED_DART_SASS_VERSION
gem 3.4.10 Corresponds with Ruby version
Hugo 0.118.2 Any version HUGO_VERSION
npm 9.6.7 Corresponds with Node.js version
pip 23.2.1 Corresponds with Python version
pipx 1.2.0
pnpm 8.7.1 Any version PNPM_VERSION
Poetry 1.6.1
Yarn 3.6.3 Any version YARN_VERSION
Bun 1.0.1 Any version BUN_VERSION

Cloudflare Pagesプロジェクトで使用しているフレームワークの特定のバージョンを設定したい場合、Pagesはビルドプロセス中に選択したパッケージマネージャーを尊重します。たとえば、Gatsbyを使用している場合、package.jsonにはgatsby npmパッケージのバージョンを示す必要があり、Cloudflare Pagesでプロジェクトがビルドされる際にnpm installを使用してインストールされます。

ビルド環境

Cloudflare Pagesのビルドは、gVisorコンテナ内で実行されます。

Build environment

Ubuntu 22.04.2

Architecture x86_64