Introduction
Your first app
From an empty directory to a URL with a certificate.
Start from a template
jekyo init # minimal skeleton, or:
jekyo templates # browse ready-made apps (postgres, redis, ...)
jekyo init postgres
Or write jekyo.yaml by hand:
app: hello
services:
web:
build:
context: .
inline: |
FROM nginx:alpine
COPY public/ /usr/share/nginx/html/
port: 80
http:
domain: hello.example.com
Check what it becomes
JEKYO compiles this file to plain Kubernetes resources. See them before deploying:
jekyo render
Validation is strict: unknown keys and inconsistencies are errors with exact locations, not silent surprises.
Ship it
jekyo up
What happens: the image is built for your server's architecture and tagged with a content hash (identical sources never rebuild), delivered to the cluster's private registry, and the app is applied: namespace, workload, service, ingress, TLS certificate. Then:
jekyo ls # apps, pods, domains, revision
jekyo ps hello # pod detail
jekyo logs hello/web -f # live logs
jekyo status hello # rollout, URL, certificate, recent warnings
Change something and run jekyo up again. That is the whole workflow. Every deploy records a revision; jekyo rollback hello returns to the previous one.
Clean up
jekyo down hello # removes workloads; volumes survive
jekyo down hello --volumes # removes everything, after confirmation