diff --git a/core/installer/app_configs/app_base.cue b/core/installer/app_configs/app_base.cue
index 4f59a73..3ed300a 100644
--- a/core/installer/app_configs/app_base.cue
+++ b/core/installer/app_configs/app_base.cue
@@ -483,7 +483,7 @@
 		}
 	}
 	helm: {
-		postgres: {
+		"postgres-\(name)": {
 			chart: charts.postgres
 			if _cluster != _|_ {
 				cluster: _cluster
@@ -602,7 +602,17 @@
 }
 
 output: {
-	openPort: list.Concat([for out in outs { out.openPort }])
+	_op: {
+		for i, out in outs {
+			for x, opm in out.openPortMap {
+				for k, v in opm {
+					"\(i)-\(x)-\(k)": v
+				}
+			}
+		}
+	}
+	_op1: [for i in _op { i }]
+	openPort: list.FlattenN(_op1, 1)
 	for _, out in outs {
 		images: out.images
 		charts: out.charts
@@ -660,6 +670,11 @@
 	images: {...}
 	charts: {...}
 	helm: {...}
+	openPort: [...#PortForward]
+	openPortMap: {
+		"_self": openPort
+		...
+	}
 	clusterProxy: {...}
 	openPort: [...#PortForward] | *[]
 	images: {
@@ -794,6 +809,12 @@
 		}
 		...
 	}
+	openPortMap: {
+		for k, v in postgresql {
+			"postgresql-\(k)": v.openPort
+		}
+		...
+	}
 	images: {
 		for k, v in postgresql {
 			for x, y in v.images {
diff --git a/core/installer/app_configs/dodo_app.cue b/core/installer/app_configs/dodo_app.cue
index 76b0220..7d49d37 100644
--- a/core/installer/app_configs/dodo_app.cue
+++ b/core/installer/app_configs/dodo_app.cue
@@ -18,6 +18,46 @@
 
 _devVM: {}
 
+#PSQL: {
+	name: string
+	size: string | *"1Gi"
+	cluster?: string
+	expose: [...string] | *[]
+}
+
+postgresql: [...#PSQL] | *[]
+_postgresql: postgresql
+
+input: {
+	for psql in _postgresql {
+		for i, e in psql.expose {
+			"port_\(psql.name)_\(i)": int @role(port)
+		}
+	}
+}
+
+out: {
+	postgresql: {
+		for psql in _postgresql {
+			"\(psql.name)": #PostgreSQL & {
+				name: psql.name
+				size: psql.size
+				if psql.cluster != _|_ {
+					cluster: clusterMap[strings.ToLower(app.cluster)]
+				}
+				openPort: [for i, e in psql.expose {
+					network: networks[strings.ToLower(e)]
+					port: input["port_\(psql.name)_\(i)"]
+					protocol: "TCP"
+					service: {
+						name: "postgres-\(psql.name)"
+						port: 5432
+					}
+				}]
+			}
+		}
+	}
+}
 if app.dev.enabled {
 	input: {
 		username?: string | *app.dev.username
@@ -484,6 +524,7 @@
 			"\(v.name)": v
 		}
 	}
+	// TODO(gio): remove
 	postgresql: {
 		for v in app.postgresql {
 			"\(v.name)": v
diff --git a/core/installer/dodo_app_test.go b/core/installer/dodo_app_test.go
new file mode 100644
index 0000000..e9d7737
--- /dev/null
+++ b/core/installer/dodo_app_test.go
@@ -0,0 +1,69 @@
+package installer
+
+import (
+	"testing"
+
+	"cuelang.org/go/cue/errors"
+)
+
+var exposedPostgreSQL = `
+app: {
+	type: "golang:1.20.0"
+	run: "main.go"
+	ingress: {
+		network: "private"
+		subdomain: "testapp"
+		auth: enabled: false
+	}
+}
+
+postgresql: [{
+	name: "db_1"
+	expose: ["private", "public", "private"]
+}, {
+	name: "db_2"
+	expose: ["public", "private", "public"]
+}]`
+
+func TestExposedPostgreSQL(t *testing.T) {
+	app, err := NewDodoApp([]byte(exposedPostgreSQL))
+	if err != nil {
+		for _, e := range errors.Errors(err) {
+			t.Log(e)
+		}
+		t.Fatal(err)
+	}
+
+	release := Release{
+		Namespace:     "foo",
+		AppInstanceId: "foo-bar",
+		RepoAddr:      "ssh://192.168.100.210:22/config",
+		AppDir:        "/foo/bar",
+	}
+	keyGen := testKeyGen{}
+	r, err := app.Render(release, env, networks, nil, map[string]any{
+		"repoAddr":       "",
+		"repoPublicAddr": "",
+		"managerAddr":    "",
+		"appId":          "",
+		"branch":         "",
+		"sshPrivateKey":  "",
+		"port_db_1_0":    1,
+		"port_db_1_1":    2,
+		"port_db_1_2":    3,
+		"port_db_2_0":    4,
+		"port_db_2_1":    5,
+		"port_db_2_2":    6,
+	}, nil, keyGen)
+	if err != nil {
+		for _, e := range errors.Errors(err) {
+			for _, f := range errors.Errors(e) {
+				for _, g := range errors.Errors(f) {
+					t.Log(g)
+				}
+			}
+		}
+		t.Fatal(err)
+	}
+	t.Log(string(r.Raw))
+}
