Documents
deployment
deployment
Type
External
Status
Published
Created
Mar 5, 2026
Updated
Mar 5, 2026

import HardwareRequire from '/docs/snippets/hardware-require.md'
import OperatingSystemRequire from '/docs/snippets/operating-system-require.md'
import InstallPrereq from '/docs/snippets/installation-prerequisites.md'
import SupportedDatabases from '/docs/snippets/supported-databases.md'

Deployment#

Deployment options cover hardware/software prerequisites, environment variable setup, and building the admin panel before launch. In the documentation: links to provider‑specific and advanced guides to help pick the right hosting strategy.

Strapi provides many deployment options for your project or application. Your Strapi applications can be deployed on traditional hosting servers or your preferred hosting provider.

The following documentation covers the basics of how to prepare Strapi for deployment on with several common hosting options.

:::strapi Strapi Cloud
You can use Strapi Cloud to quickly deploy and host your project.
:::

For self-hosted Kubernetes deployments, we recommend using npm rather than pnpm. pnpm aggressive hoisting of dependencies can break native modules, such as mysql2— that your application may rely on. npm flatter, more predictable node_modules layout helps ensure native packages load correctly.

General guidelines#

Hardware and software requirements#

To provide the best possible environment for Strapi the following requirements apply to development (local) and staging and production workflows.

  • Standard build tools for your OS (the build-essentials package on most Debian-based systems)

  • Hardware specifications for your server (CPU, RAM, storage):

  • A supported database version:

:::strapi Database deployment
Deploying databases along with Strapi is covered in the databases guide.
:::

  • A supported operating system:

Application Configuration#


1. Configure#

We recommend using environment variables to configure your application based on the environment, for example:


module.exports = ({ env }) => ({
  host: env('HOST', '0.0.0.0'),
  port: env.int('PORT', 1337),
});

Strapi generates a .env file with default values when you create a new project. You can edit this file or set variables in your chosen deployment platform (see example .env file):

HOST=10.0.0.1
PORT=1338

2. Launch the server#

Before running your server in production you need to build your admin panel for production:

NODE_ENV=production yarn build
NODE_ENV=production npm run build
npm install cross-env

Then in your package.json scripts section:

"build:win": "cross-env NODE_ENV=production npm run build",

And run:

npm run build:win

Run the server with the production settings:

NODE_ENV=production yarn start
NODE_ENV=production npm run start
npm install cross-env

Then in your package.json scripts section:

"start:win": "cross-env NODE_ENV=production npm start",

And run:

npm run start:win

We highly recommend using to manage your process.

If you need a server.js file to be able to run node server.js instead of npm run start then create a ./server.js file as follows:


const strapi = require('@strapi/strapi');
strapi.createStrapi(/* {...} */).start();

If you are developing a TypeScript-based project you must provide the distDir option to start the server.
For more information, consult the TypeScript documentation.

:::tip Health check endpoint
Strapi exposes a lightweight health check route at /_health for uptime monitors and load balancers. When the server is ready, it responds with an HTTP 204 No Content status and a strapi: You are so French! header value, which you can use to confirm the application is reachable.
:::

Advanced configurations#

If you want to host the administration on another server than the API, please take a look at this dedicated section.

Additional resources#

The of the Strapi website include information on how to integrate Strapi with many resources, including how to deploy Strapi on the following 3rd-party platforms:


In addition, community-maintained guides for additional providers are available in the . This includes the following guides:


The following external guide(s), not officially maintained by Strapi, might also help deploy Strapi on various environments:

:::strapi Multi-tenancy
If you're looking for multi-tenancy options, the Strapi Blog has a .
:::