Services /

Combined Services

Combined services bring together the features of Build and Deployment services to create a self-contained Continuous Integration and Continuous Delivery system. It's as easy as choosing a branch from a Git repository to automatically build and deploy from. Combined services cannot be added to Pipelines.

Creating a Combined Service

Most aspects of a Combined service can be configured after creation - except the name and linked repository branch.

  1. Select your Project
  2. Choose Service from the Create new drop-down menu in the top right corner of the dashboard
  3. Select Combined service type
  4. Enter a Service name and description. You must give each service in your Project a unique name.
  5. Choose the Git service which contains the repository you want to build from
  6. Select the Repository from the drop-down list. Read more about adding your Git account with Northflank. If you're a member of a team and your team administrator has restricted the team to a namespace, you'll need a linked account with access to that namespace.
  7. Select the Branch you want the service to build from
  8. Enter your Docker build context, or leave as default (root)
  9. Enter the location of your Dockerfile, or leave as default (root) and verify it
  10. Northflank will automatically detect and add ports exposed in your Dockerfile. Check the configured ports and edit if required. See networking for details.
  11. Select a Plan with the appropriate resources
  12. Click Create service
Creating Combined Service

Using a Combined Service

Once created, your combined service will automatically begin to build the latest commit to your branch and generate a Northflank domain name - provided your Dockerfile has at least one exposed port.

Check on the service dashboard that the build has completed (Latest builds) and that the public domain is available (TLS certificates). Your combined service is now automatically building and deploying the latest commits from your repository branch, which is available at your configured port.

Combined service dashboard controls

You can manage the service using the dashboard controls.

  1. Select your Project
  2. Select Services from the Project menu
  3. Select your Build service from the Project Services page
  4. Configure any of the following:

Build latest

You can toggle Build latest to enable or disable the automatic build of the latest commit to the repository, branch, or pull request.

Deploy latest

You can toggle deploy latest to enable or disable the automatic deployment of new builds to your service. All instances will be redeployed with the new build. If you also have Build latest enabled, your service will automatically build and deploy the latest commits from your tracked branch.

Redeploy

You can redeploy to automatically start new instances and halt the currently running instances. New instances will be created before stopping the existing instances to ensure continuous service.

Scaling

You can scale the amount of instances up or down by entering the desired amount and saving.

Pause

You can pause to disable the latest build, deploy latest ?, and scale all instances to 0.

Combined services overview

The overview provides immediate information about your combined service and allows you to modify or view many aspects of the service.

Load balancing

The Load balancing section shows configured public and private ports. If this section is blank, you may need to check your Dockerfile contents

or manually configure your ports. You can toggle between viewing public domain names and private internal ports.

Instances

The Instances section displays up to five of your instances and their status. You can click through to an instance to view its logs.

Latest commits

The Latest commits section shows the status of your most recent commits to the branch, and whether they are being built, have an image ready to deploy, or have an image built from the commit deployed. You can start a new build or deploy a build using the buttons on the commit entry.

TLS Certificates

The TLS Certificates section indicates when the Northflank domain name - in the format

[port-name].[service-name].[project-name].[account-name].northflank.app

- is available online. It will also display the status of other public ports and custom domains you add in the future. You can regenerate your DNS entries and TLS Certificates by clicking 'Regenerate'.

Recent builds

The Recent builds section displays a list of the most recently attempted builds. You can click through to a build to view its logs.

Combined Service Options

Environment

Add, edit, or delete environment parameters and build arguments.

Networking

Configure ports and regenerate TLS certificates.

Code

Commits

View, build, and deploy specific commits.

Dockerfile

View and edit the Build context and Dockerfile location. You can also edit the Dockerfile contents

, which will push the changes to your Dockerfile to the repository. Be aware this will affect other services using the same repository! It will trigger new builds on all services using the repository that are set to build latest, and it will automatically deploy that build on services that are set to deploy latest as well.

Build hooks

Build hooks notify Northflank when there is a new commit to a branch or pull request. Our GitHub app automatically manages your build hooks for services using a linked GitHub repository. Northflank automatically adds build hooks to GitLab and Bitbucket, you can regenerate these tokens from this tab if you have removed them from your project or repository.

You can view your webhook tokens in a GitLab project by navigating to your project on GitLab, going to settings, and selecting webhooks.

You can view your webhook tokens in a Bitbucket repository by navigating to your repository on Bitbucket, going to repository settings, and selecting webhooks from the workflow section.

Builds

Select a current or past build to view the logs for that build, you can also retry the build from the logs screen.

The lists display the status of current and past builds. Only the 8 most recent past builds appear.

Instances

View active and terminated instances. You can click on a specific instance to view its logs.

Scaling

Choose to make the service free or use a paid plan and select how many instances to deploy.

Billing

View the charges associated with the service.

Delete service

You can delete the service from the billing page.

© 2020 Northflank Ltd. All rights reserved.

TermsPrivacy

contact@northflank.com