{ "slug": "postgres-swarm", "kind": "swarm", "metadata": { "name": "PostgreSQL", "description": "Powerful open-source object-relational database system with over 35 years of active development, known for reliability, feature robustness, and performance.", "tags": [], "icon": { "provider": "selfhst", "id": "postgresql" }, "draft": false, "version": { "name": "18.3", "source_dep_name": "docker.io/library/postgres", "source_dep_version": "18.3" } }, "variables": [ { "title": "General", "name": "general", "items": [ { "name": "service_name", "type": "str", "title": "Service Name", "required": false, "default": "postgres", "config": { "placeholder": "postgres" } }, { "name": "container_hostname", "type": "str", "title": "Container Hostname", "required": true }, { "name": "container_timezone", "type": "str", "title": "Container Timezone", "required": true, "config": { "placeholder": "Europe/Berlin" } }, { "name": "postgres_initdb_args", "type": "str", "title": "Postgres Initdb Args", "required": true, "default": "", "config": { "placeholder": "--data-checksums" } }, { "name": "postgres_host_auth_method", "type": "str", "title": "Host Auth", "required": false, "default": "", "config": { "placeholder": "scram-sha-256" } }, { "name": "swarm_placement_host", "type": "str", "title": "The placement host", "required": false, "default": "", "config": { "placeholder": "swarm-node-1" } } ] }, { "title": "Ports", "name": "ports", "items": [ { "name": "ports_postgres", "type": "int", "title": "PostgreSQL port", "required": false, "default": 5432, "config": { "placeholder": "5432" }, "needs": [ "network_mode=bridge" ] } ] }, { "title": "Network", "name": "network", "items": [ { "name": "network_mode", "type": "enum", "title": "Network Mode", "required": false, "default": "bridge", "config": { "options": [ "bridge", "host" ] } }, { "name": "network_name", "type": "str", "title": "Network Name", "required": false, "default": "postgres_network", "config": { "placeholder": "postgres_network" } }, { "name": "network_external", "type": "bool", "title": "External Network", "required": false, "default": false } ] }, { "title": "Volume", "name": "volume", "items": [ { "name": "volume_mode", "type": "enum", "title": "Volume Mode", "required": false, "default": "local", "config": { "options": [ "local", "mount", "nfs" ] } }, { "name": "volume_mount_path", "type": "str", "title": "Bind Path", "required": false, "default": "/var/lib/postgresql/data", "config": { "placeholder": "/var/lib/postgresql/data" }, "needs": [ "volume_mode=mount" ] }, { "name": "volume_nfs_server", "type": "str", "title": "NFS Server", "required": false, "default": "", "needs": [ "volume_mode=nfs" ], "config": { "placeholder": "192.0.2.1" } }, { "name": "volume_nfs_path", "type": "str", "title": "NFS Path", "required": false, "default": "", "needs": [ "volume_mode=nfs" ], "config": { "placeholder": "/path/to/export" } }, { "name": "volume_nfs_options", "type": "str", "title": "NFS Options", "required": false, "default": "rw", "config": { "placeholder": "rw" }, "needs": [ "volume_mode=nfs" ] } ] }, { "title": "Database", "name": "database", "items": [ { "name": "database_name", "type": "str", "title": "Database Name", "required": true }, { "name": "database_user", "type": "str", "title": "Database User", "required": true }, { "name": "database_password", "type": "secret", "title": "Database password", "required": true, "config": { "autogenerated": { "length": 32 } } } ] } ] }