Reference
Apps

Apps

Apps are an abstraction that represents your applications on Koyeb. They are the primary top-level resource managed by organizations.

Resources

The main purpose of an App is to act as a container for Services and custom domains.

Services

Each App can define up to 16 Services. Each Service represents a component of your application like web services, APIs, or workers. They can be deployed from either a GitHub repository or container registry to one or more global regions.

You can scale Services according to your performance and availability needs. Each service is automatically versioned to provide full traceability. Services consist of your project's code along with the configuration to control how it runs.

You can configure Services to automatically redeploy to production whenever you push changes to your codebase.

Domains

Koyeb automatically assigns a publicly accessible subdomain of the koyeb.app domain to each App.

This subdomain is constructed using the following format:

<YOUR_APP_NAME>-<YOUR_KOYEB_ORGANIZATION>-<HASH>.koyeb.app

You also have the option to add additional custom domains to your App, which provides gives you greater flexibility in configuring access to your Apps and Services.

Networking

Koyeb's Global Edge Network can quickly route request to your App from anywhere in the world. The network provides 250+ edge locations, automatic load balancing for your App's Services, and TLS encryption.

Internally, Koyeb Apps have access to a service discovery engine and mesh network. This allows Services to easily contact other Services within and across your various Apps, in the region they are deployed in. All communication within the mesh is automatically encrypted.

App health

An App's health is determined by the health of its Services.

If any of the App's Services are unhealthy, the App's health will be marked as degraded or unhealthy. You can learn more on the health check page.