Create your application

With a Free Tier account, you can have unlimited applications in Release, but only two environments at a time. (Need more? Learn how to upgrade your account here.)
To create an application, make sure you're logged in, and select the account you want the application to belong to.
In the bottom right card, click on the Create New App button to begin the process.
Select "Create New App"

Select your application repository

Selecting a repository
Under "Pick your repository", select the repository from your VCS that you'll use to create your Release application. If the repository is not listed, click the refresh button to fetch the repositories, or manage your VCS permissions using the link below the repositories list (not pictured). Release will automatically pick your master or main branch, but you can pick any branch from your repository to build your application from.

Analyze and specify service types

Release will detect service types
When you have selected a repository, Release will analyze the specified branch on that repo to find all the services it contains. This information is gathered from having one or more of the following:
Review the detected services to ensure they are correct. If there is a service missing, review your .release.yaml or docker-compose file. If the list of detected services looks correct, you can proceed.

Select service type

Each service can be one of three types: static, Docker, or isomorphic.

Docker service

Docker service
Choosing Docker as a service will show you the public and private ports that Release has found, and if public, Release may create an example hostname for this service. This is another opportunity to make sure that what you're seeing is correct.

Static service

Static service
Selecting a static service means Release will need to know:
  1. 1.
    The path to the base of your static service.
  2. 2.
    The command used to build the frontend.
  3. 3.
    The output directory for the completed build.
Read our static service deployment guide to learn more about static service deployment.

Analyze hints and errors

Here is an example of a possible error message:
If Release finds an issue with a service when analyzing, it will be reported here. In this case, if you chose static for this service, it doesn't matter that Release has found an issue with your service definition in your docker-compose file.

Name your application

Release uses the name of your repository as the name of the application. This name is used for two purposes:
  1. 1.
    To identify this application in Release (in the sidebar and CLI).
  2. 2.
    As part of the URL generated for ephemeral environments, for example, ${service}-${randomness}-${applicationName}
By default, the domain your application will live under is Custom domains are available on Professional and Enterprise plans.
Click Generate App Template to move forward.

Review the Application Template

Familiarize yourself with the Application Template. You can modify the template if you need to, otherwise stick with the default template for now. You can edit the template after the initial app creation. Click Save & Continue.
Application Template example

Build and runtime configurations

In this section of the Create Application process, you can add build arguments, default environment variables, or Just-In-Time File Mounts if your application requires them.

Build your application

When you click Start Build & Deploy, you will be directed to the Application Dashboard where Release will build and deploy your app services. If you haven't already read Prepare to use Release, you should do so now while you wait for your deployment to finish. We strongly advise that you understand the Release build process and how Release interprets your docker-compose.yml or your .release.yaml.
Application Dashboard example
From the Application Dashboard, you can navigate to the Builds page by clicking the Builds tab to view specific build logs while the app is being built and when the build is complete. Similarly for deploys, you can navigate to the Deploys page and view the deployment status logs.
When the initial build and deployment are successful, you can navigate to your first environment by clicking on the user-branchName title in the "Environments" section on the App Dashboard. There you can see details about your environment, make edits to its configuration, and click on the URL hostname to preview a live replica of your app.

Congratulations! 🎉 You just created your first Release application and environment!

If something goes wrong, you can refer to the Prepare to use Release documentation. In some cases, your services might not be talking to each other, so you can read the next section below to learn how to set that up. You can also ask for assistance in getting your builds working by opening a chat with us, or by emailing [email protected]
Need help? Find me on the bottom-right corner.

What's next? Common set up examples

Your environment was successfully built and deployed, but your services might not be talking to each other as you would expect. Go to your environment and check that the hostnames resolve in a way that makes sense. If not, you can troubleshoot and find more set up tips on how to get your application running in Release. You can also follow along with one of our four example apps, or spin up one of our boilerplate apps found in our Example library.
Note: Release creates an initial Ephemeral Environment from the Create Application process. After your Application is created, you can manually create new environments (including Permanent Environments) from the Environments page.