Skip to content

Deployment Lifecycle

Creating a Deployment

To start creating a deployment, you must first create a project. Once you have a project, you can start creating new deployments.

In the next steps, we will walkthrough all the properties that can be set up when creating a deployment.

General

Within the general settings of your new deployment, you can define the name of the deployment and its stage.

Deployment general settings

Deployment Name

This will identify the internal name of your deployment within your Diploi project. You can change the name of a deployment at any time. Changes to the project name will not affect your deployment, project, repository or dependencies.

Deployment Stage

In Diploi, you have three stages that you can assign to your deployments:

Development

Development deployments enable remote development and let your application be served online development. It offers a browser IDE that can be used for remote development and also allows you to SSH into the environment using VSCode.

Development deployments often utilize hot module reloading (HMR) or similar techniques to enable quick code updates without server restarts. When using this stage, your code is cloned directly from GitHub without going through the build process.

Staging

Staging deployments are used for testing and quality assurance purposes. They run a build version of your application, exactly as your Production deployments do but as an independent deployment that would not affect your Production deployment.

Production

Production deployments host the build version of your application and it is intended to be the version of your application that your users will have access to.

Size

You must choose the appropriate size for your application. You can update the size of your deployment directly from the Options tab of your deployment.

- S - 2 vCPUs and 4 GB of ram - 0,026 €/hour

- M - 2 vCPUs and 8 GB of ram - 0,048 €/hour

- L - 4 vCPUs and 16 GB of ram - 0,089 €/hour

- XL - 8 vCPUs and 32 GB of ram - 0,182 €/hour

Repository

In this section you will be able to define the branch that your deployment will use. You can change the branch source for your deployment from the Repository & Git tab of your deployment.

Deployment repository branch

Component and Add-on Settings

Depending on your project’s components and add-ons, you might be able to make changes to the configuration, changes in this section will not affect other deployments or your project’s default configuration.

Project options components and add-ons

Managing a Deployment

Once you have created a deployment inside a project, you can access your deployment’s settings from the project page.

Deployment home page

Overview

From the overview tab, you can see the status of your deployment, view the logs for each component and add-on running and resources used.

The overview tab is divided in three core sections:

Develop Section

Only available on Development deployments

In this section, you can get the SSH connection string to your development environment and access to the remote IDE environment.

Add IDE to deployment
Remote Development

Diploi supports remote development by using the remote development capabilities of eg. Visual Studio Code, but any editor that supports editing using an SSH connection will work.

For more details, please see the Remote Development guide.

Connecting using SSH

Once you have created a deployment, look for the “Connect via SSH” command on the “Overview” tab. This command can be copied to your terminal of choice to open an SSH connection to the deployment.


Status tree

Where you can see the resources your deployment is using and the status of containers that are part of your deployment, logs, SSH connections for each container and their endpoints of all components and add-ons available on your application.

Status and resources view

All public facing URL endpoints that your applications expose have SSL encryption by default.

Deployment Setup Status

In this section you can visualize the status of each component and add-on that defines your deployment.

Status

After a deployment is started you can check its status from the Deployments Overview page. Diploi assigns a color to indicate the overall state of the deployment components

  • Green – the deployment is working correctly
  • Yellow – there is some issue but the deployment still runs
  • Red – there is some bigger issue that needs to be addressed
Logs

For each container used by your components and add-ons, you can review the logs by clicking on the “logs” button.

Container logs

Deployment resources

Here you can view how your application is using the resources available to the deployment.

Stack preview and logs

Here you can visualize the overall resource usage of your deployment. You can adjust the timeframe to show 1 minute, 1 hour or 1 day.



Repository & Git

Only available on project deployments that are linked to a repository

From this tab, you can choose the branch that your deployment will be using as its source.

When you push new changes to your selected branch, a GitHub action will be run in your repository, which creates an updated build of your application and it then updates the environment of your deployment.

In this tab, you can also change the attribution of updates to the environment, which by default is attributed to the GitHub account that created the project.

Deployment repository settings

Deployment Options

From here you can update the deployment’s name, change the size of your deployment, assign a custom domain to the public endpoints exposed by your deployment, update the environment variables used by each component and add-on in your deployment or delete your deployment.

Updating the Name

You can update the deployment’s name used inside of your project.

Project options general

Machine Size

You can change the size of the deployment machine that your deployment uses, by first disabling the deployment and then choosing a different size.

Project options size

Endpoint Settings

Diploi will by default create a public endpoint for your application and generate SSL certificates for the public endpoints. You can customize the auto-generated domains or if you prefer, you can assign a custom domain.

For a more detailed explanation, check the custom domain guide.

Deployment endpoints
Using a Custom Domain

If you want to use a custom domain all you need to do is:

  1. Access your domain’s DNS records in your domain host.
  2. Create a new CNAME record, pointing to edge.diploi.com
  3. Make sure to assign a specific name in the CNAME record, as wildcard domains are not fully supported yet.

For example, if you use GoDaddy domains, if you want to use a subdomain like custom.mydomain.com your DNS configuration would look like this:

Godaddy domain example

Managing Environment Variables

You can customize the environment variables that each of your components and add-ons use. Some variables are automatically generated from your add-ons into your components.

Deployment environment

Deleting a Deployment

When you don’t need a deployment anymore, you can delete it by looking for the button Delete deployment at the bottom of the Options tab. Be aware that this will permanently delete all data stored (such as code, databases etc.) associated with the instance.

Delete deployment