Concepts
Deployment

Deployment

What is a Diploi Deployment?

In Diploi, a deployment is a full instance of your application, including databases and other services. It also includes storage and current code changes you are working on.

Deployment can be divided into dynamic development deployments and built deployments such as testing / staging / production. The main difference is that development deployments will have persistent storage for your code so that code changes will remain even if the service restarts etc. For build deployments the containers will start fresh on every restart and run the built production version of your application. How this works can in part depend on how the project template works so make sure to check the project template documentation.


Deployment Types

There are three commonly used deployment types:

  1. Production: For the live version of your application accessible to end-users. It involves creating a build from your application's source code. Focuses on stability, performance, and scalability.

  2. Staging: Staging deployments are used for testing and quality assurance purposes. They closely resemble the production environment but are separate from the live application. Staging deployments usually create a build from your application's source code. Allows you to test changes before deploying them to production.

  3. Development: The development deployment type is primarily used for remote development. It offers a flexible environment for iterative development and debugging. In this case, the code is cloned directly from Git without going through the build process. Development deployments often utilize hot module reloading (HMR) or similar techniques to enable quick code updates without restarting the entire server.

It's important to note that the available deployment types are defined by the template, so the actual types provided may vary from the standard list mentioned above.

By choosing the appropriate deployment type, you can ensure that your application is properly deployed, tested, and optimized for the specific stage of development or production environment it is intended for.


Hosts

Diploi will by default create a public endpoint for your application and generate an SSL certificate. If you want to use your own domain please see the Custom domain 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.

ℹ️

You will need to add an SSH key to your profile in order to authenticate via SSH. Please see the Add SSH Key guide for more information.


Remote Development

Please see the Remote Development guide.


🚧 TODO:

  • Branch + how it affects (prod + ci/cd etc.)
  • Logs + Actions
  • Status...
  • Cloning
  • Env+Params
  • Delete