Docker Container

This installation guide provides step-by-step instructions for deploying Qpoint Proxy using Docker, enabling you to quickly set up a powerful and customizable egress proxy for controlling outbound traffic.

Prerequisites

  • Docker: Ensure Docker is installed on your host machine. For installation instructions, refer to the Docker official documentation.

  • Qpoint Registration Token: You'll need a valid registration token from app.qpoint.io

Docker Installation

Download the Docker Image

docker pull us-docker.pkg.dev/qpoint-edge/public/qpoint:head

Run the Docker Container

docker run \
  -p 10080:10080 \
  -p 10443:10443 \
  -p 18080:18080 \
  -p 18443:18443 \
  us-docker.pkg.dev/qpoint-edge/public/qpoint:head \
  proxy \
  --log-level=info\
  --registration-token=$TOKEN

Flags

To see the available options and flags, run:

docker run us-docker.pkg.dev/qpoint-edge/public/qpoint:head proxy --help

Below is a comprehensive list of flags and options available for the Qpoint Proxy:

  • --[no-]access-log: Enable access logs ($ACCESS_LOG)

  • --[no-]help: Show context-sensitive help (also try --help-long and --help-man).

  • --data-dir="/tmp/qpoint": Directory to store state. (Environment Variable: $DATA_DIR)

  • --tags=TAGS: Tags to auto-attach to metrics. (Environment Variable: $TAGS)

  • --middleware-egress-listen=":11001": IPfor middleware egress traffic. (Environment Variable: $MIDDLEWARE_EGRESS_LISTEN)

  • --qpoint-config=QPOINT-CONFIG: Configuration file path. (Environment Variable: $QPOINT_CONFIG)

  • --envoy-config-root=".": Root directory to generate dynamic envoy configurations. (Environment Variable: $ENVOY_CONFIG_ROOT)

  • --dns-lookup-family=V4_ONLY: DNS lookup family. (Environment Variable: $DNS_LOOKUP_FAMILY)

  • --transparent-tcp-forward-ports="18080:80,18443:443": <IP:>LISTEN_PORT:DESTINATION_PORT,<IP:>LISTEN_PORT:DESTINATION_PORT (comma separated) for transparent TCP listening and destination forwarding. (Environment Variable: $TRANSPARENT_TCP_FORWARD_PORTS)

  • --middleware-tcp-forward-ports="10080:80,10443:443": <IP:>LISTEN_PORT:DESTINATION_PORT,<IP:>LISTEN_PORT:DESTINATION_PORT (comma separated) for middleware TCP listening and destination forwarding. (Environment Variable: $MIDDLEWARE_TCP_FORWARD_PORTS)

  • --unknown-endpoint-cache-size=1000: Cache size for unknown endpoints. (Environment Variable: $UNKNOWN_ENDPOINT_CACHE_SIZE)

  • --registration-endpoint="https://api.qpoint.io": Registration endpoint. (Environment Variable: $REGISTRATION_ENDPOINT)

  • --registration-token=REGISTRATION-TOKEN: Registration token. (Environment Variable: $REGISTRATION_TOKEN)

  • --log-level=error: Log level. (Environment Variable: $LOG_LEVEL)

  • --log-encoding=json: Log encoding. (Environment Variable: $LOG_ENCODING)

  • --[no-]log-caller: Log caller. (Environment Variable: $LOG_CALLER)

  • --envoy-log-level=error: Envoy log level. (Environment Variable: $ENVOY_LOG_LEVEL)

  • --status-listen="0.0.0.0:10001": IPof status server to listen on. (Environment Variable: $STATUS_LISTEN)

  • --default-tcp-listen-address="0.0.0.0": Default TCP IP address to listen on. (Environment Variable: $DEFAULT_TCP_LISTEN_ADDRESS)

Last updated