The Best Way to Deploy and Maintain a NodeJS Application

Hosting a NodeJS application doesn't have to be hard. Deploy and manage your NodeJS applications with ease on any cloud.

Easy Deployments for NodeJS

Secure, Scalable and Easy to Manage

No matter which NodeJS framework you use, Cloud 66 has you covered. We support Express, Koa, Meteor, NextJS, NuxtJS, Sails, and more.

Over the past 12 years, we've built all the features you need to deploy, scale and manage a secure NodeJS application on any cloud.

River Island
Disney
CareerBuilder
Epic Games
Timbuk2
Discovery Channel
Glossier
Canva
Ardan Labs
RedwoodJS
River Island
Disney
CareerBuilder
Epic Games
Timbuk2
Discovery Channel
Glossier
Canva
Ardan Labs
RedwoodJS
Descartes Systems
Lufthansa
UC Berkeley
Northwestern University
George Mason University
Ritual
Spoon University
Web Summit
Usborne
Pixar
Descartes Systems
Lufthansa
UC Berkeley
Northwestern University
George Mason University
Ritual
Spoon University
Web Summit
Usborne
Pixar

Deployments

Different methods of deployment for different use cases, supporting fast and safe deployments.

SerialSerial
Serial Deployment deploys your code one server at the time. This is the safest way to deploy your code, but it takes longer to complete. You can define tests to ensure each server is healthy before moving to the next one.
ParallelParallel
Parallel Deployment deploys your code to all servers at the same time. This is the fastest way to deploy your code, and combined with code and endpoint tests, it is a zero-downtime deployment method.
RollingRolling
Rolling Deployment deploys your code to a subset of servers at the same time. This is the safest way to deploy your code, and it is faster than Serial Deployment. You will need at least 3 servers to use this deployment method.

Rollout Strategies

Experiment with different versions of your code before rolling out to all servers. The most simple way to use a Blue/Green or Canary deployment strategy without any additional tools.

NoneNone
This strategy rolls out the latest code to your servers, sends new traffic to the new code and drains the old code from any existing traffic.
Blue/GreenBlue/Green
Blue/Green deployment deploys your code but keeps a copy of your old code serving traffic. You can choose to send new traffic to the new code or keep sending traffic to the old code and switch when you are ready.
CanaryCanary
Canary deployment deploys your new code and sends a small percentage of your traffic to the new code. You can choose to increase the percentage of traffic to the new code or roll back to the old code if you are not happy with the results.

Live Log Tails

Your application logs, process logs, web server logs, database logs and error logs as well as any other logs generated on your servers can be tailed in a single stream in real-time. This is an incredibly useful feature for debugging and troubleshooting.

With a search feature and the ability to see the context around each line, you can easily find the logs you're looking for.

We call this LiveLogs

Autoscaling

Respond to changes in traffic with automatic scaling of your web servers and reduce costs by scaling down when traffic is low.

Autoscaling

Cloud 66 can automatically scale your web servers based on real user experience metrics like HTTP Response Time or conventional metrics like the CPU or Memory usage of your servers.

Setting up an Autoscaling rule is as simple if declaring your desired value for a specific metric. This metric will be calculated across all your servers to drive automatic scaling decisions.

All scaling decision are logged and audited so you can debug and see your Autoscaling rules in action.

Preview Deployments

Deploy a new instance of your code every time you push a new commit to your repository so your team andclients can preview the changes you're making.

BranchBranch
Branch deployments are triggered when you push a new branch to your git repository. This is useful for testing your code before merging it to your main branch.
Pull RequestPull Request
Pull Request deployments are triggered when you open a new pull request on your git repository. This is useful for approvals of your code before merging it to your main branch.
TagTag
Tag deployments are triggered when you push a new tag to your git repository. This is useful for deploying a specific version of your code or for deploying a release.

Deploy Your First Application Today

Monitoring and Health Checks

Cloud 66 monitoring and health checks, check the health of your servers during and after each deployment and contiously monitor them from different locations around the world.

During deployment your defined tests run to ensure your application is healthy before moving to the next server. This guarantees that your application is healthy before it starts receiving traffic and there is no downtime as a result of a failed deployment.
During Deployment Health Check

Environment Variables and Secrets

A central place to manage your environment variables, configuration parameters and secrets for your applications, that comes with team access control.

Auto GeneratedAuto Generated

All needed environment variables for the deployed components are automatically generated. For example if you have MySQL as your database,MYSQL_ADDRESS, MYSQL_USERNAME, MYSQL_PASSWORD and other variables are automatically generated for you.

Version ControlledVersion Controlled
Environment Variables are version controlled and any changes to their value will is tracked and can be reverted using the API and the CLI toolbelt.
EncryptedEncrypted
Environment Variables are encrypted during transit and at rest using the latest encryption standards and can only be decrypted by with your account's private key.

SSL Certificates

Managed CertificatesManaged Certificates

All endpoints of your application and API are automatically protected by SSL certificates issued by Let's Encrypt for your domain. These certificates are automatically renewed and managed by Cloud 66.

Wildcard CertificatesWildcard Certificates

Wildcard Certificates are automatically issued for your domain and all subdomains. These certificates are automatically renewed and managed by Cloud 66. We support a wide range of DNS providers.

Bring your own CertificateBring your own Certificate

If you prefer to use your own SSL certificates, you can upload them to Cloud 66 and we will install them on your servers for you. Intermediate certificates are also supported.

Automated Testing (CI) Integration

Pre-CI IntegrationPre-CI Integration

If you have a CI system, like Github Actions, Jenkins, CircleCI, etc, you can configure Cloud 66 to trigger a deployment after your CI pipeline is completed. This is useful for testing your code before merging it to your main branch.

Post-CI IntegrationPost-CI Integration

You can also start your CI flow, after your images are built by BuildGrid. This can be useful when you want to test your application in a production-like environment.

Github IntegrationGithub Integration
While Github is not the only git provider we support, we have a Github app, for better integration. By connecting your account to github, you can see the deployment progress and logs directly on your pull requests.

Failover and Disaster Recovery

The worst time to find out that your failover and disaster recovery plan doesn't work is when you need it the most.

That's why we built FailoverGroups, a feature that lets you deploy the same code across multiple servers, regions or even clouds and switch between them with a single click or API call.

Combined with database replication and monitoring features, FailoverGroups give you the control and simplicity you need during an emergency.

Perfect for Express

Full database supportFull database support
Whether you use MongoDB, Postgres, MySQL or Redis, we support all of them natively, including backups, migrations and replication.
Websocket supportWebsocket support
All your servers and load balancers are automatically configured to support websockets. No need to manually configure anything.
Run background jobsRun background jobs
Gulp, Grunt, PM2, Forever, Nodemon, Supervisor and more are supported. You can choose to run your background jobs on a single server or load balance them across all your servers.