Environments allow you to organize applications into isolated logical groups. Applications and components deployed on the same namespace will be able to communicate with each other, while applications deployed on different environment will not be able to communicate directly.

An environment is associated with a set of computing resources that are reserved for the applications that will be deployed on them. Resources assigned to the environments are defined during its creation.

In software development, we usually find environments such as production, staging, and development where the name denotes the type of workload that is being deployed. The production environment is used to deploy applications that are serving customer requests, while the staging one is used to integrate the newer release of the application, and the development environment is used for debugging and testing during the development process.

However, the naming around environments can be adapted to the specific needs of each user to better represent their workloads and uses cases. For example, an environment named operations or monitoring may contain applications that are used to monitor a set of resources or to deploy internal tools that support the development process. In the same way, for a consulting company, the environment name may reflect the final client. For example, deploying static webs for different clients may be done using client-i-web as the name for the different environments so that it is clear to whom the applications are associated, and at the same time having an isolation layer between them.

Other examples for environments namings are:

Environments Use case
production, staging, and development Standard environment for development attending to the stage in the development lifecycle for an application
ci-test-<id> Short-lived environments created to execute the tests on a pull request without interfering on existing ones
client-<client_name> Using environments to differentiate between applications for different clients
<app_name> or <project_name> Using environments to isolate different applications (e.g., image-resizer) or by projects (e.g., new-web-portal).

By default, all accounts in the NAPPTIVE platform will have a single environment named default. To learn more about environments check the following content:

For a guided tour, checkout the working with environments getting started section.

What’s next