A dependency error usually needs a matching runtime and a repeatable installation, rather than more RAM. Start with the first error in the install or startup log. A later process-exited message only tells you that startup failed.
Separate installation from startup
| Symptom | Check |
|---|---|
| Module not found | Package declaration, install result and working directory |
| Unsupported engine or syntax | Node version required by your project and library |
| Native addon failure | Operating system, architecture and build prerequisites |
| Missing entry file | Startup command and uploaded build output |
Use the runtime your application supports in the hosting panel. Upload package.json and its lockfile with your source. Do not copy a node_modules directory from a different operating system: native packages may contain binaries that cannot run on the destination.
Reproduce the project installation
node --version
npm --version
npm ciRun these commands inside the project directory only when your service provides a shell or install command. npm ci requires a compatible lockfile, fails when it disagrees with package.json, and replaces the local node_modules directory. Back up any files you mistakenly stored inside that generated directory first.
- Stop the bot and retain the previous working release.
- Confirm the configured startup file exists, including capitalization.
- Run the install step and read its result before starting the application.
- If compilation is required, run the documented build step and use its output entry point.
- Start one instance, run a test command, then restart it once to confirm repeatability.
If it still fails
Record the runtime version, package name and first stack trace. Share a redacted log without tokens. Avoid changing the runtime, every package and the startup command together; you will lose the information needed to identify the fix.
Use a test deployment for dependency upgrades and keep credentials separate using the bot secrets guide.
Sources and references
Hosting documentation. Publication and update dates reflect this edition.
Related articles
- Storing and Rotating Discord Bot Tokens SafelyKeep credentials out of source files, replace exposed tokens and verify the running deployment uses the new secret.2 min read
- Updating a Discord Bot with a Separate Test DeploymentTest dependencies, commands and database changes without running competing copies of your production bot.2 min read
- How to Host a Discord Bot on a Linux VPSDeploy an existing bot as an unprivileged systemd service with protected credentials, controlled restarts and a repeatable update path.4 min read
