Compute
Deploy and run every application that is not a front end, on the compute service.
stechbd compute is the group for everything that is not a front end: services that run in a container of their own. It runs the same pipeline as stechbd edge, and the panel decides whether a build is static or runtime from what it produced, not from the word typed. The two groups differ in billing. edge is the service a static site or an SSR front end is billed on, and compute is the service for everything else.
Every verb below takes the same options as its edge counterpart. For what each option does and when to use it, see the edge page. The only option that differs is --allow-major on deploy, deploy:prod and rollback, which exists for compute only.
| Command | What it does |
|---|---|
stechbd compute deploy | Pack this directory, upload it, and release it to production |
stechbd compute deploy:prod | The same as deploy, spelled so nobody can mistake what it does |
stechbd compute deploy:preview | Build this directory beside production, under a name, with --domain if wanted |
stechbd compute ls | List deployments, newest first, with where each went |
stechbd compute inspect | Show one deployment in full, the newest when none is named |
stechbd compute logs | Print a build’s output, following it to the end if it is still running |
stechbd compute tail | Follow what the running application prints, from now |
stechbd compute containers | List the containers behind the application, for tail --container |
stechbd compute rollback | Put an earlier production release back, the previous one by default |
stechbd compute promote | Put a preview into production, as the same artifact |
stechbd compute cancel | Stop a deployment that has not finished |
stechbd compute start | Start the application without deploying |
stechbd compute stop | Stop the application, so it serves nothing until started |
stechbd compute restart | Restart the application without deploying |
stechbd compute redeploy | Build the application’s git remote again, uploading nothing |
stechbd compute stack | Show the stack this application runs: each service, its pinned image and its role |
stechbd compute service:restart | Restart one service of the stack in place, leaving the others running |
stechbd compute service:logs | Follow what one service of the stack prints, from now |
stechbd compute port:request | Ask for a raw TCP or UDP host port; nothing opens until an operator grants it |
stechbd compute port:ls | List requested and granted host ports and whether each is open |
stechbd compute port:rm | Withdraw a port request; a granted port can only be revoked by an operator |
Examples
# Release a service to production, from a directory linked with project link
stechbd compute deploy
# Follow the build, then check the release
stechbd compute logs
stechbd compute ls --limit 5# Roll back, allowing a major-version bump of a stateful stack service
stechbd compute rollback --allow-major# Watch one container of a service after a release
stechbd compute containers
stechbd compute tail --container workerstechbd compute stack
Shows the stack this application runs: each service, the image it is pinned to, and its role. Use it to see what a stack deployment is made of before restarting or reading the logs of one service. It takes no arguments.
stechbd compute stack [--app <app>]| Option | Description |
|---|---|
--app <app> | The application whose stack is shown. An id, or the slug in the linked project. |
stechbd compute stackstechbd compute service:restart
Restarts one service of the stack in place. The other services keep running. Use it when one service is wedged and the rest of the stack is correct.
stechbd compute service:restart <name> [--app <app>]| Option | Description |
|---|---|
<name> | The service to restart, as named in the stack. Required |
--app <app> | The application that owns the service. An id, or the slug in the linked project. |
stechbd compute service:restart workerstechbd compute service:logs
Follows what one service of the stack prints, starting now. It does not show earlier output. Use it to watch one service after a restart or a release, without the output of the others.
stechbd compute service:logs <name> [--app <app>]| Option | Description |
|---|---|
<name> | The service whose output is followed. Required |
--app <app> | The application that owns the service. An id, or the slug in the linked project. |
stechbd compute service:logs workerstechbd compute port:request
Asks for a raw TCP or UDP host port that reaches one service of the stack. A request is not a port: nothing is published until an operator grants it. The panel refuses reserved ports, and its message is printed as it is.
stechbd compute port:request <hostPort> --service <name> [--protocol <tcp|udp>] [--container-port <n>] [--note <text>] [--app <app>]| Option | Description |
|---|---|
<hostPort> | The host port to request, from 1 to 65535. Required |
--service <name> | The service of the stack the port reaches. Required |
--protocol <tcp|udp> | The protocol. tcp when omitted |
--container-port <n> | The port inside the container, from 1 to 65535 |
--note <text> | A note attached to the request |
--app <app> | The application that owns the service. An id, or the slug in the linked project. |
# Request a host port for the postgres service
stechbd compute port:request 5432 --service postgres
# Request a UDP port, with a note for the operator
stechbd compute port:request 5353 --service dns --protocol udp --note "internal resolver"stechbd compute port:ls
Lists the requested and granted host ports for the application, and whether each one is open. Use it to find the id to pass to port:rm, or to check whether a granted port is open.
stechbd compute port:ls [--app <app>]| Option | Description |
|---|---|
--app <app> | The application whose ports are listed. An id, or the slug in the linked project. |
stechbd compute port:lsstechbd compute port:rm
Withdraws a port request by its id. A granted port is not removed by this command, because only an operator can revoke one. The command asks first, unless --yes is given.
stechbd compute port:rm <id> [--yes] [--app <app>]| Option | Description |
|---|---|
<id> | The port request to withdraw, from port:ls. Required |
--yes | Skip the confirmation prompt |
--app <app> | The application that owns the request. An id, or the slug in the linked project. |
stechbd compute port:ls
stechbd compute port:rm 12 --yes