services
List all Services for an App. The output includes each Service's name, its assigned domain, and the ports it exposes. This is useful for verifying which endpoints are available after a deployment.
When any Service in the App declares nlb: entries, an additional NLB PORTS column is shown. Each cell is PORT:CONTAINERPORT, suffixed with /tls for TLS-terminating listeners, (internal) for listeners on the internal NLB, and a bracketed [cz=... allow=N pcip=...] when the listener overrides any of the Rack-level NLB defaults (NLBCrossZone, NLBAllowCIDR, NLBPreserveClientIP).
Syntax
$ convox services
Flags
| Flag | Short | Description |
|---|---|---|
--app |
-a |
App name |
--rack |
-r |
Rack name |
Example Usage
$ convox services -a myapp
SERVICE DOMAIN PORTS
web web.myapp.0a1b2c3d4e.convox.cloud 443:3000
api api.myapp.0a1b2c3d4e.convox.cloud 443:4000
worker
With an App that declares nlb: ports:
$ convox services -a broker
SERVICE DOMAIN PORTS NLB PORTS
api api.broker.0a1b2c3d4e.convox.cloud 443:3000 443:3000/tls 50051:50051(internal)
worker
With per-port overrides (cross_zone, allow_cidr, preserve_client_ip):
$ convox services -a broker
SERVICE DOMAIN PORTS NLB PORTS
web web.broker.0a1b2c3d4e.convox.cloud 443:3000 8443:3000/tls[cz=true allow=2 pcip=false]
api 9443:8080(internal)[allow=1]
worker
Bracket short forms:
cz=— per-portcross_zone:override (trueorfalse)allow=N— count of per-portallow_cidr:entries (not the rack-level total)pcip=— per-portpreserve_client_ip:override (trueorfalse)
Ports that do not override any Rack-level default carry no bracket.