Active versions
See Image statuses for what Active means. You can select the major version. But the latest compatible minor version is applied automatically and can’t be overridden. Patch versions are applied periodically for bug fixes and other maintenance updates. By default, you get the latest available patches each time you deploy. If your project has a maintenance window configured, Upsun Cloud applies patches only during that window. Upsun Cloud may still apply urgent or critical fixes outside of the maintenance window.- 26
- 24
- 22
Specify the language
To use Node.js, specifynodejs as your app’s type:
For example:
To use a specific version in a container with a different language, use a version manager.
Sunset versions
The following versions are still available in your projects, including code pushes, but new projects can’t use them. These versions are decommissioned 180 calendar days after entering Sunset. The exact decommission date is shown on your project’s Overview page and on the relevant activity in the Activity panel. See Image statuses for what each status means.- 20
- 18
- 16
- 15
- 14
- 12
- 10
- 8.9
- 8
- 6.10
- 6.9
- 6.8
- 6.6
- 6.3
- 6.2
- 6
- 4.7
- 4.6
- 4.5
- 4.4
- 4.3
- 4.2
- 4
- 0.12
Decommissioned versions
The following versions have been decommissioned and are no longer available. See Image statuses for what each status means. If your project uses a decommissioned version, you must update to an active version. No decommissioned versions.Usage example
To use JavaScript with Node.js on Upsun Cloud, configure your app configuration (a complete example is included at the end).1. Specify the version
Choose a version from the list of active versions and add it to your app configuration:2. Specify any global dependencies
Add the following to your app configuration: These are now available as commands, the same as installing withnpm install -g.
3. Build your app
Include any commands needed to build and setup your app in thehooks, as in the following example:
4. Start your app
Specify a command to start serving your app (it must be a process running in the foreground):5. Listen on the right port
Make sure your Node.js application is configured to listen over the port given by the environment.Complete example
A complete basic app configuration looks like the following:Dependencies
By default, Upsun Cloud assumes you’re using npm as a package manager. If your code has apackage.json, the following command is run as part of the default build flavor:
.npmrc file in your app root.
Use Yarn as a package manager
To switch to Yarn to manage dependencies, follow these steps:- Turn off the default use of npm:
-
Specify the version of Yarn you want:
package.json
- Yarn 3.x and Node.js 16+
- Yarn 3.x and Node.js < 16
- Yarn < 3
- Use Corepack to run Yarn in your build hook:
Use Bun as a package manager
Bun is available as a runtime and package manager for Node.js version 20 or above. Choose one of the active versions rather than the minimum supported version.
.upsun/config.yaml
Use Bun as a runtime
You can even use Bun as a runtime by adjusting thestart command as follows:
.upsun/config.yaml
Connecting to services
You can access service credentials to connect to managed services from environment variables present in the application container. Consult each of the individual service documentation to see how to retrieve and surface credentials into your application.- ClickHouse
- Elasticsearch
- Gotenberg
- Headless Chrome
- InfluxDB
- Kafka
- MariaDB/MySQL
- Memcached
- mercure
- mongodb
- Network Storage
- OpenSearch
- PostgreSQL
- RabbitMQ
- Redis
- Solr
- Valkey
- Varnish
- Vault KMS
- Chroma
- Qdrant
To deploy a Node.js project, create a new project from the Upsun Console and select a template, or push your existing code.