Core Settings
PORT
Default:3000
HTTP server port.
HOST
Default:0.0.0.0
Bind address for the HTTP server.
NODE_ENV
Default:production
Node.js environment mode.
DATA_DIR
Default:/app/data (Docker) or ./data (local)
Directory for persistent data (database, stacks, git repos, cache).
User and Permissions
PUID
Default:1001
User ID for the Dockhand process (Docker only).
PGID
Default:1001
Group ID for the Dockhand process (Docker only).
Database
DATABASE_URL
Default: SQLite at$DATA_DIR/db/dockhand.db
PostgreSQL connection string. Omit to use SQLite.
DB_FAIL_ON_MIGRATION_ERROR
Default:true
Exit immediately if database migrations fail.
DB_VERBOSE_LOGGING
Default:false
Enable verbose database logging.
SKIP_MIGRATIONS
Default:false
Skip database migrations on startup (debugging only).
Docker Connection
DOCKER_SOCKET
Default: Auto-detected (/var/run/docker.sock)
Path to the Docker socket.
DOCKER_HOST
Default: None Docker daemon connection URL.DOCKER_API_VERSION
Default: Auto-negotiated Docker API version to use.HOST_DATA_DIR
Default: Auto-detected Host path toDATA_DIR for Docker bind mounts.
HOST_DOCKER_SOCKET
Default: Auto-detected Host path to Docker socket for stack deployment.Security
ENCRYPTION_KEY
Default: Auto-generated and saved to$DATA_DIR/.encryption_key
32-byte hex key for encrypting sensitive data (passwords, tokens, TLS keys).
COOKIE_SECURE
Default: Auto-detected (HTTPS = true, HTTP = false) Force secure cookies.DISABLE_LOCAL_LOGIN
Default:false
Disable local username/password login (force SSO).
Hostname
DOCKHAND_HOSTNAME
Default: Auto-detected from Docker API Hostname for license validation and display.HOSTNAME
Default: Container hostname Container hostname (used for host path detection).Performance
COMPOSE_TIMEOUT
Default:900 (15 minutes)
Timeout in seconds for Docker Compose operations.
SKIP_DF_COLLECTION
Default:false
Skip disk usage collection (use if df command is slow).
MEMORY_MONITOR
Default:false
Enable memory monitoring and heap snapshots.
SNAPSHOT_INTERVAL
Default:60 (minutes)
Interval for memory snapshots when MEMORY_MONITOR=true.
Event Collection
DISABLE_METRICS
Default:false
Disable metrics collection (CPU, memory, disk).
DISABLE_EVENTS
Default:false
Disable container event collection.
Git Integration
GIT_REPOS_DIR
Default:$DATA_DIR/git-repos
Directory for cloned Git repositories.
Timezone
TZ
Default:UTC
Timezone for logs and timestamps.
Example Configuration
Docker Compose with PostgreSQL
docker-compose.yaml
Environment File (.env)
.env
Best Practices
Use .env Files
Store sensitive variables in
.env files, not in docker-compose.yaml.Back Up Keys
Back up
ENCRYPTION_KEY and .encryption_key file. Without them, encrypted data is lost.Set Timeouts
Increase
COMPOSE_TIMEOUT for large stacks that take time to deploy.Use PostgreSQL
For production, use PostgreSQL instead of SQLite for better performance and reliability.
