Reduce the public surface
Expose managed routes instead of opening application processes directly to the internet.
Adios places managed gateways in front of public apps, keeps credentials outside source, supports runtime controls where available, and lets internal services remain non-routable.
name: billing-worker
region: de
replicas: 1
routable: false
build_cmd: go build -o worker ./cmd/worker
start_cmd: ./worker
runtime:
name: go@1.25
cpu: "0.5"
memory_mb: 512
disk_mb: 2048
secrets:
QUEUE_URL: secret://QUEUE_URLExample outcome
Run an internal billing worker without a public route.
Set routable: false, declare CPU and memory limits, and inject the queue URL from secret storage so the worker has only the access and resources it needs.
Expose managed routes instead of opening application processes directly to the internet.
Resolve secret references only for the workload path that needs them.
Declare CPU, memory, disk, health, replica, and routing expectations with the runtime.
Why this matters
Public ports, TLS, credentials, resource limits, health checks, and routing decisions can become one-off configuration that is hard to review and easy to drift.
What changes with Adios
Put the gateway in front, keep credentials out of Git, use explicit resource settings, and make internal services non-routable when they do not need public traffic.
How it works
Deploy behind the Adios gateway.
Use secret:// references for sensitive config.
Run workloads with runtime boundaries and inspectable deploy state.
A real use case
Set routable: false, declare CPU and memory limits, and inject the queue URL from secret storage so the worker has only the access and resources it needs.
Gateway-before-runtime traffic model
Non-routable internal services
Explicit CPU, memory, disk, replica, and health settings
Runtime controls where supported
Gateway
Managed public boundary
Release
Versioned deploy state
Runtime
Managed application process
Secrets
Resolved outside source
Start here
Put the gateway in front, keep secrets outside source, and declare the routing and resource settings the process should have.
Keep building
Secrets & Environment Variables
Commit secret:// references so required credential names remain visible while their values are stored separately, then resolved for the runtime or workflow that needs them.
Explore →Custom Domains & TLS
Declare custom hosts and whole-host redirects with the app. After DNS verification, Adios serves the TLS route and keeps the hostname attached to the promoted current release.
Explore →Observability & Logs
Build logs, runtime logs, source artifacts, versions, replica health, routes, and workflow runs stay connected in the same deployment path.
Explore →