delonix net tunnel

Expõe uma porta local à internet pública via pinggy/ngrok/cloudflare (`kind: Gateway`).

Exposes a local port to the public internet via pinggy/ngrok/cloudflare (`kind: Gateway`).

Faz UMA coisa: leva tráfego da internet pública até UMA porta local — sem conta, sem IP público, sem configurar o router. Junta-se ao httproute apontando a porta local do túnel para a porta onde o proxy L7 escuta, e o routing por Host do lado de lá continua a decidir para que container vai cada pedido — uma só URL pública, vários backends. Três providers, cada um o binário/mecanismo REAL desse serviço (nunca simulado): pinggy (zero binário extra — ssh puro, já uma dependência do projecto), ngrok (precisa do agente ngrok no PATH; a URL pública sai da API local do próprio agente) e cloudflare (precisa de cloudflared; por agora só o quick-tunnel efémero *.trycloudflare.com, sem conta — um tunnel NOMEADO com domínio próprio precisa da API do Cloudflare, ainda por implementar).

Does ONE thing: carries traffic from the public internet down to ONE local port — no account, no public IP, no router config. Pairs with httproute by pointing the tunnel's local port at the port the L7 proxy listens on, and Host-based routing on the other end still decides which container each request goes to — one public URL, several backends. Three providers, each the REAL binary/mechanism of that service (never simulated): pinggy (zero extra binary — plain ssh, already a project dependency), ngrok (needs the ngrok agent on PATH; the public URL comes from the agent's own local API) and cloudflare (needs cloudflared; for now only the ephemeral quick-tunnel *.trycloudflare.com, no account — a NAMED tunnel with its own domain needs the Cloudflare API, not implemented yet).

Usage: delonix net tunnel [OPTIONS] <COMMAND>

Commands:
  expose  One-shot expose of a local port, no manifest needed
  apply   Apply the `kind: Gateway` documents of a manifest (idempotent)
  help    Print this message or the help of the given subcommand(s)

Options:
      --l18n <en|pt>
          Output language: `en` (default) or `pt` (Portuguese, pt_AO). Also settable via `$DELONIX_L18N`. Global — works before any subcommand

  -h, --help
          Print help (see a summary with '-h')

COMMAND MAP:
  Lifecycle    expose
  Declarative  apply

EXAMPLES:
  # a local port on the public internet, with no account and no public IP on
  # this host
  delonix net tunnel expose 8080

  # apply the `kind: Gateway` documents of a manifest instead of a one-shot
  # expose
  delonix net tunnel apply -f delonix-manifest.yaml

SEE ALSO:
  delonix get · delonix delete · delonix net httproute apply · delonix net
  ingress publish

  delonix › net › tunnel

ExemplosExamples

Listar túneis (estado + URL pública) — `tunnel ls` saiu para o verbo genérico
List tunnels (state + public URL) — `tunnel ls` moved to the generic verb
delonix get gateways
NAME    PROVIDER   LOCAL PORT   PUBLIC URL                                    STATUS    UPTIME
test1   pinggy          18234   https://oxipg-197-148-40-67.free.pinggy.net   Running   Up 34 seconds
Detalhe de um túnel
Detail of one tunnel
delonix describe gateway demo
Parar e remover (mata o processo agente a sério)
Stop and remove it (really kills the agent process)
delonix delete gateway demo
tunnel/demo: removed

tunnel apply

Apply the kind: Gateway documents of a manifest (idempotent)

Usage: delonix net tunnel apply [OPTIONS]

Options:
  -f, --file <FILE>
          

      --l18n <en|pt>
          Output language: `en` (default) or `pt` (Portuguese, pt_AO). Also settable via `$DELONIX_L18N`. Global — works before any subcommand

  -h, --help
          Print help (see a summary with '-h')

EXAMPLES:
  # the `kind: Gateway` documents of the manifest here — idempotent, an
  # unchanged tunnel is left alone
  delonix net tunnel apply

  # from a file, where the token comes from a `kind: Secret` instead of the
  # shell history
  delonix net tunnel apply -f delonix-manifest.yaml

SEE ALSO:
  delonix net tunnel expose · delonix get · delonix secret create · delonix
  stack apply

  delonix › net › tunnel › apply

ExemplosExamples

Declarar o túnel num manifesto kind: Gateway
Declare the tunnel in a kind: Gateway manifest
delonix net tunnel apply -f tunel.yaml

tunnel expose

One-shot expose of a local port, no manifest needed

Usage: delonix net tunnel expose [OPTIONS] <LOCAL_PORT>

Arguments:
  <LOCAL_PORT>
          Local TCP port to expose

Options:
      --l18n <en|pt>
          Output language: `en` (default) or `pt` (Portuguese, pt_AO). Also settable via `$DELONIX_L18N`. Global — works before any subcommand

  -p, --provider <PROVIDER>
          `pinggy` | `ngrok` | `cloudflare`
          
          [default: pinggy]
          [possible values: pinggy, ngrok, cloudflare]

  -n, --name <NAME>
          Name (default: `tunnel-<port>`)

      --hostname <HOSTNAME>
          Custom/reserved hostname — `ngrok` uses it as `--url` (a reserved domain on your account); `cloudflare` only accepts it together with `--token` (a NAMED tunnel), where it is informational — the route itself lives in the Cloudflare dashboard for that tunnel

      --token <TOKEN>
          Provider token: pinggy pro token, ngrok authtoken, or a cloudflare NAMED tunnel's token (`cloudflared tunnel token <name>` or the Zero Trust dashboard) — switches `--provider cloudflare` from an anonymous quick tunnel to that tunnel

      --token-secret <TOKEN_SECRET>
          

      --insecure-skip-tls-verify
          Skip TLS verification of the LOCAL backend's cert (self-signed HTTPS on `localhost:<local-port>`). Never affects the public tunnel URL. No-op for `pinggy`

  -h, --help
          Print help (see a summary with '-h')

EXAMPLES:
  # pinggy needs no account and no extra binary — it is plain ssh, and the
  # free URL is ephemeral
  delonix net tunnel expose 8080

  # a name of your own, instead of the `tunnel-<port>` default
  delonix net tunnel expose 8080 --name demo

  # ngrok, with the authtoken read from a secret rather than typed into argv
  delonix net tunnel expose 8080 --provider ngrok --token-secret ngrok-token

  # a cloudflare quick tunnel — random trycloudflare.com URL, no account,
  # `cloudflared` must be on PATH
  delonix net tunnel expose 8080 --provider cloudflare

  # a cloudflare NAMED tunnel you already created — its public hostname is
  # whatever you configured for it in the dashboard
  delonix net tunnel expose 8080 --provider cloudflare --token-secret cf-tunnel-token

SEE ALSO:
  delonix get · delonix delete · delonix net tunnel apply · delonix net
  httproute apply

  delonix › net › tunnel › expose

Validado ao vivo nesta mesma sessão: tráfego HTTPS real da internet chegou a um servidor local através do tunnel (HTTP 200) usando exactamente este comando.

Validated live in this very session: real HTTPS traffic from the internet reached a local server through the tunnel (HTTP 200) using exactly this command.

ExemplosExamples

Expor uma porta local sem escrever manifesto (pinggy, grátis, efémero)
Expose a local port with no manifest (pinggy, free, ephemeral)
delonix net tunnel expose 8080 --name demo
tunnel/demo: running — https://oxipg-197-148-40-67.free.pinggy.net

LaboratórioLab

Uma porta local, uma URL pública — sem conta, sem router.

delonix net tunnel expose 8080
delonix get gateways

One local port, one public URL — no account, no router config.

delonix net tunnel expose 8080
delonix get gateways

DesafioChallenge

Aponta a porta local do tunnel para a porta onde o proxy L7 (httproute) escuta, e confirma que a MESMA URL pública consegue servir vários containers backend diferentes, decididos pelo Host do pedido.

Point the tunnel's local port at the port the L7 proxy (httproute) listens on, and confirm the SAME public URL can serve several different backend containers, decided by the request's Host.