sklp gateway

sklp gateway

Description

Manage the host ingress gateway (up | down | status | mux | redirect)

Subcommands

Technical details

Technical details

Raw command JSON

{
  "path": [
    "sklp",
    "gateway"
  ],
  "slug": "gateway",
  "name": "gateway",
  "short": "Manage the host ingress gateway (up | down | status | mux | redirect)",
  "synopsis": "sklp gateway",
  "subcommands": [
    {
      "path": [
        "sklp",
        "gateway",
        "down"
      ],
      "slug": "gateway-down",
      "name": "down",
      "short": "Tear the host gateway singleton down",
      "synopsis": "sklp gateway down [flags]",
      "flags": [
        {
          "name": "file",
          "usage": "path to deploy.yaml (selects the gateway driver)",
          "type": "string",
          "default": ".sklp/deploy.yaml"
        },
        {
          "name": "repo",
          "usage": "repository root the deploy file is relative to",
          "type": "string",
          "default": "."
        },
        {
          "name": "server",
          "aliases": [
            "addr"
          ],
          "usage": "remote supervisor control API (https://host:9443); when set, pilot it over the network instead of the local socket",
          "type": "string"
        },
        {
          "name": "token",
          "usage": "Bearer token for --server (prefer --token-file or SKLP_CONTEXT_TOKEN to keep it out of the process list)",
          "type": "string"
        },
        {
          "name": "token-file",
          "usage": "file holding the Bearer token for --server",
          "type": "string"
        },
        {
          "name": "ca-fingerprint",
          "usage": "pin the server certificate by its sha256 fingerprint (printed by the server / `sklp deploy fingerprint`)",
          "type": "string"
        },
        {
          "name": "insecure",
          "usage": "skip TLS verification for --server (LAN bootstrap only; prefer --ca-fingerprint)",
          "type": "bool"
        },
        {
          "name": "context",
          "usage": "deploy context to read server/token/ca-fingerprint from (default: the active context)",
          "type": "string"
        },
        {
          "name": "config",
          "usage": "path to a config file to read (one file per node/VM, e.g. lungor.yaml); overrides the default ~/.config/sklp/config.yaml",
          "type": "string"
        }
      ]
    },
    {
      "path": [
        "sklp",
        "gateway",
        "mux"
      ],
      "slug": "gateway-mux",
      "name": "mux",
      "short": "Run the host front-door mux (ingress-per-space): route external traffic to each space's ingress",
      "synopsis": "sklp gateway mux [flags]",
      "flags": [
        {
          "name": "listen",
          "usage": "HTTP front door address (routes by Host header)",
          "type": "string",
          "default": ":9080"
        },
        {
          "name": "listen-tls",
          "usage": "HTTPS front door address (routes by TLS SNI, passthrough); empty to disable",
          "type": "string",
          "default": ":9443"
        }
      ]
    },
    {
      "path": [
        "sklp",
        "gateway",
        "redirect"
      ],
      "slug": "gateway-redirect",
      "name": "redirect",
      "short": "Manage the host :80->:9080 / :443->:9443 NAT redirect (front door for the rootless gateway)",
      "synopsis": "sklp gateway redirect",
      "subcommands": [
        {
          "path": [
            "sklp",
            "gateway",
            "redirect",
            "down"
          ],
          "slug": "gateway-redirect-down",
          "name": "down",
          "short": "Remove the front-door redirect",
          "synopsis": "sklp gateway redirect down [flags]",
          "flags": [
            {
              "name": "persist",
              "usage": "also write the rules under /etc/nftables.d so they survive a reboot",
              "type": "bool"
            }
          ]
        },
        {
          "path": [
            "sklp",
            "gateway",
            "redirect",
            "status"
          ],
          "slug": "gateway-redirect-status",
          "name": "status",
          "short": "Show whether the front-door redirect is installed",
          "synopsis": "sklp gateway redirect status"
        },
        {
          "path": [
            "sklp",
            "gateway",
            "redirect",
            "up"
          ],
          "slug": "gateway-redirect-up",
          "name": "up",
          "short": "Install the front-door redirect (needs root: run via sudo)",
          "synopsis": "sklp gateway redirect up [flags]",
          "flags": [
            {
              "name": "persist",
              "usage": "also write the rules under /etc/nftables.d so they survive a reboot",
              "type": "bool"
            }
          ]
        }
      ]
    },
    {
      "path": [
        "sklp",
        "gateway",
        "status"
      ],
      "slug": "gateway-status",
      "name": "status",
      "short": "Show the host gateway singleton state",
      "synopsis": "sklp gateway status [flags]",
      "flags": [
        {
          "name": "file",
          "usage": "path to deploy.yaml (selects the gateway driver)",
          "type": "string",
          "default": ".sklp/deploy.yaml"
        },
        {
          "name": "repo",
          "usage": "repository root the deploy file is relative to",
          "type": "string",
          "default": "."
        },
        {
          "name": "server",
          "aliases": [
            "addr"
          ],
          "usage": "remote supervisor control API (https://host:9443); when set, pilot it over the network instead of the local socket",
          "type": "string"
        },
        {
          "name": "token",
          "usage": "Bearer token for --server (prefer --token-file or SKLP_CONTEXT_TOKEN to keep it out of the process list)",
          "type": "string"
        },
        {
          "name": "token-file",
          "usage": "file holding the Bearer token for --server",
          "type": "string"
        },
        {
          "name": "ca-fingerprint",
          "usage": "pin the server certificate by its sha256 fingerprint (printed by the server / `sklp deploy fingerprint`)",
          "type": "string"
        },
        {
          "name": "insecure",
          "usage": "skip TLS verification for --server (LAN bootstrap only; prefer --ca-fingerprint)",
          "type": "bool"
        },
        {
          "name": "context",
          "usage": "deploy context to read server/token/ca-fingerprint from (default: the active context)",
          "type": "string"
        },
        {
          "name": "config",
          "usage": "path to a config file to read (one file per node/VM, e.g. lungor.yaml); overrides the default ~/.config/sklp/config.yaml",
          "type": "string"
        }
      ]
    },
    {
      "path": [
        "sklp",
        "gateway",
        "up"
      ],
      "slug": "gateway-up",
      "name": "up",
      "short": "Bring the host gateway singleton up",
      "synopsis": "sklp gateway up [flags]",
      "flags": [
        {
          "name": "file",
          "usage": "path to deploy.yaml (selects the gateway driver)",
          "type": "string",
          "default": ".sklp/deploy.yaml"
        },
        {
          "name": "repo",
          "usage": "repository root the deploy file is relative to",
          "type": "string",
          "default": "."
        },
        {
          "name": "server",
          "aliases": [
            "addr"
          ],
          "usage": "remote supervisor control API (https://host:9443); when set, pilot it over the network instead of the local socket",
          "type": "string"
        },
        {
          "name": "token",
          "usage": "Bearer token for --server (prefer --token-file or SKLP_CONTEXT_TOKEN to keep it out of the process list)",
          "type": "string"
        },
        {
          "name": "token-file",
          "usage": "file holding the Bearer token for --server",
          "type": "string"
        },
        {
          "name": "ca-fingerprint",
          "usage": "pin the server certificate by its sha256 fingerprint (printed by the server / `sklp deploy fingerprint`)",
          "type": "string"
        },
        {
          "name": "insecure",
          "usage": "skip TLS verification for --server (LAN bootstrap only; prefer --ca-fingerprint)",
          "type": "bool"
        },
        {
          "name": "context",
          "usage": "deploy context to read server/token/ca-fingerprint from (default: the active context)",
          "type": "string"
        },
        {
          "name": "config",
          "usage": "path to a config file to read (one file per node/VM, e.g. lungor.yaml); overrides the default ~/.config/sklp/config.yaml",
          "type": "string"
        }
      ]
    }
  ]
}

See also