3 min readMar 29, 2026by jakub

Docker

Run Trident as a Docker container from the official Trident Container Registry.

Pull the Image

Bash
docker pull docker.trident-cache.com/trident:latest

For a specific version:

Bash
docker pull docker.trident-cache.com/trident:1.0.0

Run

Basic usage with default configuration:

Bash
docker run -d \
  --name trident \
  -p 8120:8120 \
  docker.trident-cache.com/trident:latest

With a custom configuration file:

Bash
docker run -d \
  --name trident \
  -p 8120:8120 \
  -v /path/to/config.toml:/etc/trident/config.toml:ro \
  docker.trident-cache.com/trident:latest

With a license key:

Bash
docker run -d \
  --name trident \
  -p 8120:8120 \
  -v /path/to/config.toml:/etc/trident/config.toml:ro \
  -v /path/to/license.key:/etc/trident/license.key:ro \
  docker.trident-cache.com/trident:latest

Docker Compose

YAML
services:
  trident:
    image: docker.trident-cache.com/trident:latest
    ports:
      - "8120:8120"
    volumes:
      - ./config.toml:/etc/trident/config.toml:ro
      - ./license.key:/etc/trident/license.key:ro
    restart: unless-stopped

Exposed Ports

PortDescription
8120HTTP listener
Customizing Ports

The ports shown above are defaults from the config file. You can change them in your config.toml and update the Docker port mappings accordingly. For example, to also expose the admin API and metrics, map additional ports.

Update to Latest Version

Pull the latest image and recreate the container:

Bash
# Pull the newest image
docker pull docker.trident-cache.com/trident:latest

# Stop and remove the old container
docker stop trident && docker rm trident

# Start with the new image
docker run -d \
  --name trident \
  -p 8120:8120 \
  -v /path/to/config.toml:/etc/trident/config.toml:ro \
  docker.trident-cache.com/trident:latest

With Docker Compose:

Bash
docker compose pull
docker compose up -d
Pin to a specific version

For production, pin to a version tag instead of latest to avoid unexpected updates:

YAML
image: docker.trident-cache.com/trident:v1.0.10

Then update explicitly:

YAML
image: docker.trident-cache.com/trident:v1.0.11

Check Current Version

Bash
# Running container
docker exec trident trident --version

# Available tags
curl -s https://docker.trident-cache.com/v2/trident/tags/list | python3 -m json.tool

Zero-Downtime Update (Docker Compose)

If you need zero-downtime updates, use a rolling restart with a load balancer or run two instances:

Bash
# Scale up (start new container alongside old one)
docker compose up -d --scale trident=2 --no-recreate

# Wait for new container to be healthy
sleep 5

# Remove old container
docker compose up -d --scale trident=1

Verify

Bash
docker exec trident trident --version
docker exec trident trident-cli --version

Available Images

ImageDescription
docker.trident-cache.com/tridentTrident HTTP Cache Proxy
docker.trident-cache.com/prismTrident PRISM Dynamic Rendering
docker.trident-cache.com/trident-adminTrident Admin Dashboard

Next Steps

Was this page helpful?
Docker — Installation — Trident HTTP Cache Proxy | qoliber Docs