Skip to content

Container Labels Reference

Docker labels starting with autocft. control creation of ingress rules.

Required Labels

LabelDescription
autocft.enabledSet to true to be managed.
autocft.hostnamePublic hostname to expose.
autocft.serviceUpstream service address, e.g. http://app:8080, tcp://redis:6379.

Optional Labels

LabelTypeDescriptionFallback
autocft.pathstringURL path prefix (default /)./
autocft.origin.connect-timeoutintConnect timeout ms.ENV
autocft.origin.disable-chunked-encodingboolDisable chunked encoding.ENV
autocft.origin.http2-originboolForce HTTP/2.ENV
autocft.origin.http-host-headerstringOverride Host header.ENV
autocft.origin.keep-alive-connectionsintMax idle connections.ENV
autocft.origin.keep-alive-timeoutintKeepalive idle timeout s.ENV
autocft.origin.no-happy-eyeballsboolDisable dual‑stack race.ENV
autocft.origin.no-tls-verifyboolSkip TLS verification.ENV
autocft.origin.origin-server-namestringCertificate host name.ENV
autocft.origin.proxy-typestringBlank or socks.ENV
autocft.origin.tcp-keep-aliveintTCP keepalive s.ENV
autocft.origin.tls-timeoutintTLS handshake timeout s.ENV

Example

yaml
services:
  api:
    image: ghcr.io/example/api:latest
    labels:
      - autocft.enabled=true
      - autocft.hostname=api.example.com
      - autocft.service=http://api:8080
  web:
    image: ghcr.io/example/web:latest
    labels:
      - autocft.enabled=true
      - autocft.hostname=app.example.com
      - autocft.service=http://web:3000
      - autocft.origin.no-tls-verify=true

Collision Rules

Only one entry per hostname is kept; avoid duplicates. If a hostname conflicts with a web‑added entry it will be recognized as web‑managed on first sync and preserved.

Removal

Remove or set autocft.enabled=false; on next sync the entry is deleted (if not web‑managed).

Released under the MIT License.