INTEGRITY Документация

Конфигурация сборки

Cloudflare Pages можно указать, как нужно собирать сайт и где будут находиться его файлы сборки.

Команды сборки и директории

Cloudflare Pages нужно указать команду сборки, чтобы объяснить, как собирать приложение. Для проектов, не указанных здесь, изучите документацию соответствующего инструмента или фреймворка и отправьте pull request, чтобы добавить их в этот список.

Директория сборки указывает, куда команда сборки проекта выводит собранную версию сайта на Cloudflare Pages. Обычно по умолчанию используется стандартная для отрасли public, но вам может понадобиться настроить её.

Основные сведения о конфигурации сборки

Команда сборки задаётся используемым фреймворком. Например, фреймворк Gatsby использует gatsby build в качестве команды сборки. Если вы работаете без фреймворка, оставьте Команда сборки поле пустым. Pages определяет успешность сборки по коду завершения, который возвращает указанная вами команда сборки. Любой код завершения, отличный от нуля, помечает сборку как неудачную. Код завершения 0 помечает сборку Pages как успешную, и файлы будут загружены независимо от того, записываются ли ошибки в поток standard error.

Каталог сборки создаётся командой сборки. У каждого фреймворка своё соглашение об именовании, например каталог вывода сборки называется /public для многих фреймворков.

Корневой каталог представляет собой место, где хранится содержимое вашего сайта. Если он не указан, Cloudflare считает корневым каталогом подключённый git-репозиторий. Корневой каталог необходимо указывать в таких случаях, как монорепозитории, где в одном репозитории может находиться несколько проектов.

Framework presets

Cloudflare ведёт список конфигураций сборки для популярных фреймворков и инструментов. Он доступен при создании проекта. Ниже перечислены стандартные команды и каталоги сборки для популярных фреймворков и инструментов.

Если вы не используете пресет, используйте exit 0 как ваш Команда сборки.

Фреймворк/инструментКоманда сборкиДиректория сборки
React (Vite)npm run builddist
Gatsbynpx gatsby buildpublic
Next.js (статический экспорт HTML)npx next buildout
Nuxt.jsnpm run builddist
Qwiknpm run builddist
Remixnpm run buildbuild/client
Sveltenpm run buildpublic
SvelteKitnpm run build.svelte-kit/cloudflare
Vuenpm run builddist
Analognpm run builddist/analog/public
Astronpm run builddist
Angularnpm run builddist/cloudflare
Brunchnpx brunch build --productionpublic
Docusaurusnpm run buildbuild
Elder.jsnpm run buildpublic
Eleventynpx @11ty/eleventy_site
Ember.jsnpx ember-cli builddist
GitBooknpx gitbook-cli build_book
Gridsomenpx gridsome builddist
Hugohugopublic
Jekylljekyll build_site
MkDocsmkdocs buildsite
Pelicanpelican contentoutput
React Staticreact-static builddist
Slate./deploy.shbuild
Uminpx umi builddist
VitePressnpx vitepress build.vitepress/dist
Zolazola buildpublic

Переменные окружения

Если ваш проект использует переменные окружения для сборки сайта, вы можете задать собственные переменные окружения:

  1. На панели управления Cloudflare перейдите к разделу Workers & Pages страницу.

    Перейдите в Workers & Pages ↗
  2. Выберите свой проект Pages.

  3. Выберите Настройки > Переменные окружения.

По умолчанию внедряются следующие системные переменные окружения (их можно переопределить):

Переменная окружения Внедрённое значение Пример варианта использования
CI true Изменение поведения сборки при запуске в CI и локально
CF_PAGES 1 Изменение поведения сборки при запуске на Pages и локально
CF_PAGES_COMMIT_SHA <sha1-hash-of-current-commit> Передача текущего ID коммита в систему отчетов об ошибках, например Sentry
CF_PAGES_BRANCH <branch-name-of-current-deployment> Настройка сборки в зависимости от ветки, например отключение отладочного логирования на production
CF_PAGES_URL <url-of-current-deployment> Позволяет инструментам сборки узнать URL-адрес, по которому будет развёрнута страница