Files
bun.sh/docs/guides/ecosystem/pm2.md
h2210316651 4531cf18c2 Docs : Added instructions to run bun apps in daemon (PM2) to address … (#5931)
* Docs : Added instructions to run bun apps in daemon (PM2) to address issue #4734

Added instructions to set bun as pm2 interpreter to extend same functionality as node.js apps.

* Add pm2 guide

* Add pm2 file

---------

Co-authored-by: Colin McDonnell <colinmcd94@gmail.com>
2023-10-11 14:22:43 -07:00

1.5 KiB
Raw Blame History

name
name
Run Bun as a daemon with PM2

PM2 is a popular process manager that manages and runs your applications as daemons (background processes).

It offers features like process monitoring, automatic restarts, and easy scaling. Using a process manager is common when deploying a Bun application on a cloud-hosted virtual private server (VPS), as it:

  • Keeps your Node.js application running continuously.
  • Ensure high availability and reliability of your application.
  • Monitor and manage multiple processes with ease.
  • Simplify the deployment process.

You can use PM2 with Bun in two ways: as a CLI option or in a configuration file.

With --interpreter


To start your application with PM2 and Bun as the interpreter, open your terminal and run the following command:

pm2 start --interpreter ~/.bun/bin/bun index.ts

With a configuration file


Alternatively, you can create a PM2 configuration file. Create a file named pm2.config.js in your project directory and add the following content.

module.exports = {
  name: "app", // Name of your application
  script: "index.ts", // Entry point of your application
  interpreter: "~/.bun/bin/bun", // Path to the Bun interpreter
};

After saving the file, you can start your application with PM2

pm2 start pm2.config.js

Thats it! Your JavaScript/TypeScript web server is now running as a daemon with PM2 using Bun as the interpreter.