Skip to content
Quick Start

Quick start

Deploy Drydock with Docker in seconds using a socket proxy or direct mount.

Run the Docker image

The easiest way to start is to deploy the official drydock image.

Using a socket proxy is the most secure way to expose the Docker API. The proxy limits which endpoints Drydock can access.

services:
  drydock:
    image: codeswhat/drydock
    container_name: drydock
    depends_on:
      socket-proxy:
        condition: service_healthy
    environment:
      - DD_WATCHER_LOCAL_HOST=socket-proxy
      - DD_WATCHER_LOCAL_PORT=2375
    ports:
      - 3000:3000

  socket-proxy:
    image: tecnativa/docker-socket-proxy
    container_name: drydock-socket-proxy
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      - CONTAINERS=1
      - IMAGES=1
      - EVENTS=1
      - SERVICES=1
      # Add POST=1 and NETWORKS=1 if using the Docker trigger for auto-updates
    healthcheck:
      test: wget --spider http://localhost:2375/version || exit 1
      interval: 5s
      timeout: 3s
      retries: 3
      start_period: 5s
    restart: unless-stopped
The official image is published on Github Container Registry: codeswhat/drydock

Before production use, verify signatures for the image or release archive you deploy.

Use the Cosign verification guide for exact commands.

Open the UI

Open the UI in a browser and check that everything is working as expected.

Add your first trigger

Everything ok? It's time to add some triggers!

Going deeper

Need to fine configure how drydock must watch your containers? Take a look at the watcher documentation!
Need to integrate other registries (ECR, GCR...)? Take a look at the registry documentation.

Ready-to-go examples

You can find here a complete configuration example illustrating some common drydock options.