wordpress-deployment.yaml 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. apiVersion: v1
  2. kind: Service
  3. metadata:
  4. name: reevolution
  5. namespace: reevolution
  6. labels:
  7. app: reevolution
  8. spec:
  9. type: NodePort
  10. ports:
  11. - port: 80
  12. nodePort: 30089
  13. targetPort: reevolution
  14. selector:
  15. app: reevolution
  16. tier: frontend
  17. ---
  18. apiVersion: v1
  19. kind: PersistentVolumeClaim
  20. metadata:
  21. name: reevolution-pv-claim
  22. namespace: reevolution
  23. labels:
  24. app: reevolution
  25. spec:
  26. accessModes:
  27. - ReadWriteMany
  28. storageClassName: ""
  29. resources:
  30. requests:
  31. storage: 10Gi
  32. ---
  33. apiVersion: apps/v1
  34. kind: Deployment
  35. metadata:
  36. name: reevolution
  37. namespace: reevolution
  38. labels:
  39. app: reevolution
  40. spec:
  41. selector:
  42. matchLabels:
  43. app: reevolution
  44. tier: frontend
  45. strategy:
  46. type: Recreate
  47. template:
  48. metadata:
  49. labels:
  50. app: reevolution
  51. tier: frontend
  52. spec:
  53. containers:
  54. - image: wordpress:5.7.2-php7.4-apache
  55. name: reevolution
  56. env:
  57. - name: WORDPRESS_DB_HOST
  58. value: reevolution-mysql
  59. - name: WORDPRESS_DB_PASSWORD
  60. valueFrom:
  61. secretKeyRef:
  62. name: reevolution-pass
  63. key: password
  64. - name: WORDPRESS_DB_USER
  65. valueFrom:
  66. secretKeyRef:
  67. name: reevolution-pass
  68. key: db_user
  69. ports:
  70. - containerPort: 80
  71. name: reevolution
  72. volumeMounts:
  73. - name: reevolution-persistent-storage
  74. mountPath: /var/www/html
  75. volumes:
  76. - name: reevolution-persistent-storage
  77. persistentVolumeClaim:
  78. claimName: reevolution-pv-claim