Application Management
Ketch enables you to focus on your application code and updates by automatically creating all application-related objects required by Kubernetes to run your applications. This reduces the learning curve associated with Kubernetes adoption, simplifies the application deployment process, and gives you an application context view post-deployment.
The sections below describe how you can manage your application's lifecycle on Kubernetes using Ketch.
Deploying Applications
The command below allows you to deploy your application code in the framework that you created in the Creating Framework section:
ketch app deploy APPNAME [flags]
Flags:
Flag | Type | Description |
---|---|---|
--build-pack | string | A list of build packs |
--builder | string | Builder to use when building from source |
-d, --description | string | Application description |
-e, --env | string | Application environment variables |
-k, --framework | string | Framework to deploy your app |
--fsgroup | int | The fsGroup for pod's security context; root if not set. |
-i, --image | string | The image that should be used with the application |
--ketch-yaml | string | The path to the ketch.yaml file |
--procfile | string | The path to Procfile. If not set, ketch will use the entrypoint and cmd from the image |
--registry-secret | string | A name of a Secret with docker credentials. This secret must be created in the same namespace of the framework |
--run-as-user | int | The user to use for running pod's processes; root if not set. |
--step-interval | string | Time interval between each step. Supported min: m, hour:h, second:s. ex. 1m, 60s, 1h |
--steps | int | Number of steps to roll out the new deployment (default 1) |
--strict | boolean | Strict decoding of ketch.yaml |
--timeout | string | Defines the length of time to block waiting for deployment completion. Supported min: m, hour:h, second:s. ex. 1m, 60s, 1h. (default "20s") |
--unit-process | string | Specify process whose units to update. Must be used with units flag! |
-unit-version | int | Specify version whose units to update. Must be used with units flag! (default 1) |
--units | int | Set number of units for deployment. (default 1) |
--volume | string | Name of the volume to bind to the application. |
--volume-mount-options | stringToString | Options for volume mount. (default []) |
--volume-mount-path | string | Path to mount a volume. |
--wait | boolean | If true blocks until deploy completes or a timeout occurs. |
Exporting Applications
Ketch allows you to export a Helm chart of your application before deployment. This allows you to customize the chart to your specifications before it is deployed to your application framework.
Exporting applications can also be useful in scenarios where you need to share applications with other users, share application templates, and more.
You can export your application by using the command below:
ketch app export APPNAME [flags]
Flags:
Flag | Type | Description |
---|---|---|
-d, --directory | string | The directory where the template should be exported to |
Application Info
You can get application info by running the following command:
ketch app info APPNAME
Listing Applications
You can list all available applications by using the following command:
ketch app list
Removing Applications
You can remove applications with a simple app remove command:
ketch app remove APPNAME
Starting Applications
You can start an application or one of the processes associated with the application by using the following command:
ketch app start APPNAME [flags]
Flags:
Flag | Type | Description |
---|---|---|
-p, --process | string | Process name |
-v, --version | int | Deployment version |
Stopping Applications
You can stop an application or one of the processes associated with the application by using the following command:
ketch app stop APPNAME [flags]
Flags:
Flag | Type | Description |
---|---|---|
-p, --process | string | Process name |
-v, --version | int | Deployment version |
Updating Applications
You can update your application's description and registry configuration by using the command below:
ketch app update APPNAME [flags]
Flags:
Flag | Type | Description |
---|---|---|
-d, --description | string | Application description |
--registry-secret | string | A name of a Secret with docker credentials. This secret must be created in the same namespace of the pool |
Application log
ketch app log APPNAME [flags]
Flags
Flag | Type | Description |
---|---|---|
-f, --follow | Specify if the logs should be streamed | |
--ignore-errors | If watching / following pod logs, allow for any errors that occur to be non-fatal | |
--prefix | Prefix each log line with the log source (pod name and container name) | |
-p, --process | string | Process name |
--timestamps | Include timestamps on each line in the log output | |
-v, --version | int | Deployment version |
List builders
You can list Cloud Native Buildpack builders to use. Ketch uses heroku/buildpacks:20 builder by default.
ketch builder list
Flags
Flag | Type | Description |
---|---|---|
list | list builders |
Updated over 1 year ago