Nomploy Nomad Packs

← All packs

pgadmin v0.1.0

Dev tools

pgAdmin 4 — the popular web-based administration and development tool for PostgreSQL. Deployed as a host-networked Nomad service with a persistent Docker volume for its saved servers and settings. Pairs with the postgres pack.

nomad-pack run pgadmin --registry nomploy
2 tasks http 5050 1 volume image dpage/pgadmin4:latest
Variables 10
values.hcl

Save as values.hcl, edit, then run:

nomad-pack run pgadmin -f values.hcl --registry nomploy
# The name of the Nomad job.
job_name = "pgadmin"

# The Nomad namespace to deploy into.
namespace = "default"

# The datacenters to deploy to.
datacenters = ["*"]

# The pgAdmin 4 container image. Pin a tag in production.
image = "dpage/pgadmin4:latest"

# Host port for the pgAdmin web UI (PGADMIN_LISTEN_PORT).
port = 5050

# Initial login email (must be a valid email format). Created on first boot.
email = "admin@example.com"

# Initial login password. CHANGE THIS.
password = "admin"

# Docker named volume for /var/lib/pgadmin (saved server connections, preferences). A prestart task chowns it to uid 5050 (the pgadmin user).
data_volume = "pgadmin_data"

# Placement constraints — pin to one node so the local volume stays put. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
constraints = []

# The task resources.
resources = {
    cpu    = 300
    memory = 256
  }
NameTypeDefaultDescription
job_name string
"pgadmin"
The name of the Nomad job.
namespace string
"default"
The Nomad namespace to deploy into.
datacenters list
["*"]
The datacenters to deploy to.
image string
"dpage/pgadmin4:latest"
The pgAdmin 4 container image. Pin a tag in production.
port number
5050
Host port for the pgAdmin web UI (PGADMIN_LISTEN_PORT).
email set me string
"admin@example.com"
Initial login email (must be a valid email format). Created on first boot.
password key string
"admin"
Initial login password. CHANGE THIS.
data_volume string
"pgadmin_data"
Docker named volume for /var/lib/pgadmin (saved server connections, preferences). A prestart task chowns it to uid 5050 (the pgadmin user).
constraints list
[]
Placement constraints — pin to one node so the local volume stays put. On a nomploy cluster: attribute = "$${meta.nomploy_control_plane}", operator = "=", value = "true".
resources object
{
    cpu    = 300
    memory = 256
  }
The task resources.
Readme

pgadmin

pgAdmin 4 — the popular web-based administration and development tool for PostgreSQL (browse schemas, run queries, manage roles, view plans). Pairs with the postgres pack. Host-networked Nomad service with a persistent volume for saved servers and settings.

Usage

nomad-pack registry add nomploy github.com/Nomploy/nomad-packs
nomad-pack run pgadmin --registry nomploy --var password=<secret>

In nomploy: create a Compose service, type Nomad Pack, pack pgadmin, set password, then Deploy. Open http://<node-ip>:5050 and log in with email / password, then add a server (host 127.0.0.1, port 5432 for the postgres pack on the same node).

Key variables

Variable Default Notes
image dpage/pgadmin4:latest Pin a tag in production.
port 5050 Web UI (PGADMIN_LISTEN_PORT).
email admin@example.com Login email — must be a valid email format.
password admin Change this.
data_volume pgadmin_data Saved connections + prefs.
constraints [] Pin to a node so the local volume stays put.
resources cpu 300 / mem 256 Lightweight.

Notes