Skip to main content

Getting Started

Requirements​

  • Go 1.22+ (for building from source)
  • Docker (for container deployment)

Install via Docker​

docker pull voidrunner3074/aastro:latest

docker run \
-p 7805:7805 \
-v $(pwd)/config.yaml:/etc/aastro/config.yaml \
-e AASTRO_CONFIG=/etc/aastro/config.yaml \
voidrunner3074/aastro:latest

Build from Source​

git clone https://github.com/voidrunner3074/aastro.git
cd aastro

make all GOOS=linux GOARCH=amd64

./bin/aastro -c /path/to/config.yaml

Minimal Configuration​

schema: v1

gateway:
server:
port: 7805
timeout: 10s
admin:
port: 7806
routing:
flows:
- path: /api/hello
method: GET
upstreams:
- name: hello
hosts: http://your-service.local
path: /hello
method: GET
timeout: 3s

A flow with a single upstream (like this one) doesn't need aggregation - there's nothing to aggregate. The upstream's response is proxied to the client as-is; see Single-Upstream Flows.

Start the gateway:

aastro -c /path/to/config.yaml

Send a request:

curl http://localhost:7805/api/hello

Health Check​

Aastro exposes a built-in health endpoint. The __ prefix avoids conflicts with user-defined flow paths.

curl http://localhost:7805/__health
# → 200 OK