diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 59caa871a2e7bf659150ef9dcea0d693420b2eda..0f05eeaa093001a7b11dd18013c1b74ecb26395c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -117,6 +117,7 @@ deploy-realworld:
     - kubectl get all
     - kubectl apply -f realworld/backend-service.yaml
     - kubectl apply -f realworld/frontend-service.yaml
+    - kubectl apply -f realworld/postgres-network-policy.yaml
     - kubectl apply -f realworld/ingress.yaml
 
 deploy-realworld-postgres:
diff --git a/realworld/postgres-network-policy.yaml b/realworld/postgres-network-policy.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0f452d8ce51e0eb07e4709fa324adc5e413a0007
--- /dev/null
+++ b/realworld/postgres-network-policy.yaml
@@ -0,0 +1,15 @@
+apiVersion: extensions/v1beta1
+kind: NetworkPolicy
+metadata:
+  name: realworld-postgres-network-policy
+spec:
+  ingress:
+  - ports:
+    - port: 5432
+      protocol: TCP
+  podSelector:
+    matchLabels:
+      service: postgres
+      app: realworld
+  policyTypes:
+  - Ingress