Resources
pgAdmin
-
app
dpage/pgadmin4:latest
Running
-
ingress
pgadmin.example.com
Live
Parameters
Deploy pgAdmin
App Name required
pgadmin
Domain required
pgadmin.example.com
Login email required
Login password
•••••••••••••••• generated
Generated if left empty
Enable HTTPS
On
Cancel Deploy
YAML
apiVersion: leaf/v1
kind: Template
metadata:
name: pgadmin
displayName: 'pgAdmin'
description: 'The Postgres admin UI. Point it at your managed databases.'
icon: https://github.com/pgadmin-org.png?size=256
version: '1.0.0'
category: developer
tags: ['postgres', 'database', 'admin']
keywords: ['sql client', 'dbeaver', 'query editor']
homepage: https://www.pgadmin.org
license: PostgreSQL
parameters:
- name: appName
displayName: 'App Name'
type: string
default: 'pgadmin'
required: true
validation:
pattern: '^[a-z][a-z0-9-]{1,58}[a-z0-9]$'
message: 'Must be lowercase alphanumeric with hyphens, 3-60 chars'
- name: domain
displayName: 'Domain'
type: string
required: true
placeholder: 'pgadmin.example.com'
- name: adminEmail
displayName: 'Login email'
type: string
required: true
placeholder: '[email protected]'
- name: adminPassword
displayName: 'Login password'
description: 'Generated if left empty'
type: secret
validation:
min: 16
- name: enableTls
displayName: 'Enable HTTPS'
type: boolean
default: true
resources:
- name: app
type: deployment
config:
name: '{{ params.appName }}'
image: dpage/pgadmin4:latest
replicas: 1
ports:
- name: http
containerPort: 80
servicePort: 80
protocol: TCP
volumes:
- name: data
type: pvc
mountPath: /var/lib/pgadmin
storageSize: '1Gi'
env:
- key: PGADMIN_DEFAULT_EMAIL
value: '{{ params.adminEmail }}'
- key: PGADMIN_DEFAULT_PASSWORD
value: '{{ params.adminPassword }}'
secret: true
- key: PGADMIN_LISTEN_PORT
value: '80'
- name: ingress
type: ingress
config:
host: '{{ params.domain }}'
tlsEnabled: '{{ params.enableTls }}'
routes:
- path: /
serviceName: '{{ resources.app.serviceName }}'
servicePort: 80