Once you’ve provisioned infrastructure in your cloud account, you can start to deploy your first application. In this example, we’ll deploy a simple NodeJS application to verify that your cluster has been provisioned successfully.

Applications and Services

It is worth delineating two concepts that are associated with your deployments on Porter: Applications and Services.

An Application is a group of Services. All services that belong to an application share the same application build (i.e. container image) as well as a group of environment variables. It is not possible for services that belong to the same application to run a different application build or have a different set of environment variables. There are three different types of services that you can deploy on Porter.

If you need to deploy applications that run different container images or have different environment variables, you will have to deploy them as a separate application.

Launch your Application

On the Porter dashboard, click on New Application.


After you give your application a name, you will be prompted to deploy your application from a Git repository or a Docker registry. If you deploy your application from a Git repository, your application will be updated automatically when there is a push to a specified branch. If you already have your own CI/CD pipelines and maintain your own docker images that have been pushed to a Docker registry, you can deploy directly from the Docker registry.

Installing the Porter GitHub App

Before you can start deploying your application, you will be prompted to install the Porter GitHub app. Once you’re redirected to a GitHub authorization and installation screen, select which repositories you want to install the Porter App in. Depending on your Github organization settings, you may need to request the installation and wait for an approval from your organization admin.