GuidesChangelogDiscussions
Log In

Application Management

You can use Ketch's provider for Crossplane to provide developers with an easy way to deploy applications across Kubernetes clusters.

Deploying Applications

You can use the example below as a base for deploying applications:

apiVersion: ketch.io/v1alpha1
kind: App
metadata:
  name: app
spec:
  forProvider:
    name: bulletin
    image: docker.io/shipasoftware/bulletinboard:1.0
    framework: dev
    cnames: [ "app1.ketch.io", "app2.ketch.io", "app3.ketch.io"]
    ports: [7000, 7001, 7002]
    units: 5
    processes:
    - cmd:
        - docker-entrypoint.sh
        - npm
        - start
      name: web
    routingSettings:
      weight: 100

Specification

Component

Type

Description

name

string

The name of the application.

Required: Yes

image

string

The address of the image to be deployed

Required: Yes

framework

string

The name of the framework that was previously created and should be used by Ketch to deploy the application.

Required: Yes

cnames

string

Additional CNAMEs that should be created and assigned to the application.

Required: No

ports

int

A port, or list of ports, that should be used by Ketch to expose the application once deployed.

Required: No
Default: Ketch will use the port defined in the EXPOSE definition of your container image.

units

int

The number of containers that should be used to deploy the application.

Required: No
Default: 1

processes

processes

Custom commands that should be executed by Ketch.

Required: No

routingSettings

routingSettings

The traffic weight that should be assigned to your application in case this is a follow on deployment.

Required: No

Processes

Component

Type

Description

name

string

The name of the process to be executed by Ketch.

cmds

string

The breakdown of the command to be executed by Ketch.

Router Settings

Component

Type

Description

weight

int

The traffic weight that should be shifted to the new deployment version.