Think applications not yamls :)
Ketch is an application delivery framework that facilitates the deployment and management of applications on Kubernetes using a simple command line interface. No YAML required!
The latest Ketch release can be found here. Use the following commands to install Ketch,
Install latest at /usr/local/bin default location
curl -s https://raw.githubusercontent.com/shipa-corp/ketch/main/install.sh | bash
Alternatively, you can install specific tag at a target location, for example command below installs ketch version v0.2.0 in current directory:
curl -s https://raw.githubusercontent.com/shipa-corp/ketch/main/install.sh | INSTALL_DIR=. TAG=v0.2.0 bash
At present, Ketch supports Istio and Traefik ingress controllers.
Here is how you can install Traefik:
Use Helm to install Traefik.
helm repo add traefik https://helm.traefik.io/traefik
helm repo update
helm install traefik traefik/traefik
Or you can install Istio:
curl -Ls https://istio.io/downloadIstio | ISTIO_VERSION=1.9.0 sh -
export PATH=$PWD/istio-1.9.0/bin:$PATH
istioctl install --set profile=demo
kubectl apply --validate=false -f https://github.com/jetstack/cert-manager/releases/download/v1.0.3/cert-manager.yaml
kubectl apply -f https://github.com/shipa-corp/ketch/releases/download/v0.2.0/ketch-controller.yaml
Thats it!
Learn more about Ketch at Ketch documentation
Deploying apps is easy once you've installed Ketch. First, create a pool. Then create app(s) adding them to the pool and finally deploy the app(s). The following example illustrates these steps.
# Add a pool with ingress Traefik (default), replace ingress IP address by your ingress IP address
ketch pool add mypool --ingress-service-endpoint 35.247.8.23 --ingress-type traefik
# Create app
ketch app create bulletinboard --pool mypool
# Deploy app
ketch app deploy bulletinboard -i docker.io/shipasoftware/bulletinboard:1.0
# Check app status
ketch app list
NAME POOL STATE ADDRESSES PLATFORM DESCRIPTION
bulletinboard mypool 1 running http://bulletinboard.35.247.8.23.shipa.cloud
After you deploy your application, you can access it at the address associated with it using the ketch app list
, in
this example bulletinboard.35.247.8.23.shipa.cloud
.
For details see https://theketch.io.
Usage:
ketch [flags]
ketch [command]
Available Commands:
app Manage applications
cname Manage cnames of an application
env Manage an app's environment variables
help Help about any command
platform Manage platforms
pool Manage pools
unit Manage an app's units
Flags:
-h, --help help for ketch
-v, --version version for ketch
Use "ketch [command] --help" for more information about a command.
- Discuss Ketch on slack or our dev mailing list
- Join office hours
Ketch office hours aim is to listen from the community, share ideas, experiences and ask questions. In this meeting Ketch maintainers are going to look for new ideas, feature requests, answer any questions related to uses of Ketch, contributing to Ketch or any other questions/suggestions.
Ketch office hours takes place every other Wednesday at 4:30pm UTC/8:30am PST. Check our Event calendar and check your local time.
- Join Ketch mailing group to stay connected with office hour and other ketch community events
- Office hour agenda and running notes
- Event calendar