Terminal & Commands
Reach inside a running service's container from the console or the CLI, as you would with kubectl exec.
Terminal
Open a service, then the Terminal tile on its overview. You get an interactive shell in the service's newest instance: bash when the image has it, otherwise sh. It behaves like a local terminal: colors, vim, top, less, Ctrl-C and Esc all reach the shell, and it follows the window size.
From the CLI:
zenavo shell webThe CLI's exit status is the shell's, so zenavo shell web < script.sh also works in scripts.
- Each terminal is a new shell in the container. Changes outside volumes are lost when the service restarts or redeploys.
- A terminal closes after 30 minutes without input, and after 8 hours in any case. One account can have 5 open at a time.
- Images without a shell (distroless, scratch) cannot open one.
Commands
The Command tile runs a single command with sh -c and shows its output, for quick checks and one-off tasks such as migrations. Output is limited to 256 KB, and known variable values are redacted from it. From the CLI: zenavo service exec -s web -- ls -la.
Who can use them
Members, admins and owners. Viewers cannot: a shell can read the service's variables. Opening a terminal and running a command are recorded in the audit log, without what was typed: commands and keystrokes may contain secrets. Terminal output is not redacted.