Make safer choices part of the runtime.
Apps are served through the Adios gateway. Mark internal services routable: false, set CPU and memory limits, and use secret:// references. Runtime controls such as Linux namespaces and cgroups apply where the selected runtime supports them.
Free to start, no card. Always-on hosting from $10/month.
IN PRACTICE
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 no public route.
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
env:
QUEUE_URL: secret://QUEUE_URLHOW IT WORKS
Reduce exposure before the workload starts.
- 01
Deploy behind the Adios gateway.
- 02
Set routable: false on internal services and use secret:// references for sensitive config.
- 03
Declare CPU and memory limits in adios.yaml, and review the deploy before it ships.
WHY IT BELONGS HERE
A raw server makes every production boundary your responsibility.
Public ports, TLS, credentials, and resource limits can turn into one-off settings that are hard to review.
Reduce the public surface
Traffic comes in through managed routes. Use routable: false for services that need no public traffic.
Reduce credential exposure
Keep credentials as secret:// references, resolved for the build, runtime, or workflow that needs them.
Make limits explicit
Declare CPU, memory, health, replica, and routing settings in adios.yaml.
What’s included
- ✓ Traffic goes through the gateway to your app
- ✓ routable: false for internal services
- ✓ CPU, memory, disk, replica, and health settings in adios.yaml
- ✓ Namespaces and cgroups where the runtime supports them
PLANS AND LIMITS
These controls are included on every plan.
- Namespace and cgroup controls depend on what the selected runtime supports.
- Free apps get 0.5 vCPU and 1 GB; paid plans raise this.
CONNECTED CAPABILITIES
Keep building.
Secrets and environment variables
Keep secret names in adios.yaml while the values stay outside Git in team secret storage.
Explore →02 /Custom domains and TLS
Attach verified domains and redirects to your app. Adios manages TLS, and your hostname follows the current release.
Explore →03 /Logs and health
Read build and runtime logs from the dashboard or adios logs, and narrow them by build, region, or replica.
Explore →YOUR NEXT DEPLOY STARTS HERE
Works on localhost? Ship it tonight.
Connect your AI, say “deploy this,” and share the link. Upgrade for production from $10/month.