Ignite provides you with a gradual approach to deploying your apps: it’s easy to deploy a simple app, but there are powerful features, like autoscaling, which you can easily add on when you need them.

Concepts

Deployments

Deployments are Ignite’s primary logical concept. Similar to Kubernetes deployments; at their core, they’re a definition for how a particular application and it’s containers should run. Hop projects can have multiple deployments inside of them.

You should create a new deployment per application or image you want to run. For example: one deployment for your API, and a separate deployment for your database.

Scaling Strategy

When creating a deployment, you can choose how you want your containers to scale. This can either be manual (you will be able to manually create and destroy each container) or autoscaled (Hop will automatically create and destroy containers based on their CPU load).

Containers

There can be multiple containers running inside one deployment. They run the image specified in the deployment config, and have individual logs.

Containers also get their own internal IP address which you can connect to from any other containers or resources in your project.

Even though the deployment config defines how containers should run, you can override some of the options (such as compute resources or environment variables) when creating individual containers in the manual scaling strategy mode.

Gateways

Gateways are similar to Kubernetes services - they allow you to expose network access to your deployment’s containers to the internet, or internally to your project.

There are multiple gateway types. For example, you can use an External HTTP Gateway to quickly and easily expose an API deployment to the internet with a custom domain. Hop handles the certificates, port mapping and load balancing for you.

Read more on Gateways