Guest User

Untitled

a guest
Nov 12th, 2020
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 2.90 KB | None | 0 0
  1. kubectl create -k .
  2.  
  3.  
  4. kustomization.yaml
  5. -----
  6.  
  7. secretGenerator:
  8. - name: mysql-pass
  9.   literals:
  10.  - password='password'
  11. resources:
  12.  - mysql-deployment.yaml
  13.   - wordpress-deployment.yaml
  14.  
  15.  
  16. mysql-deployment.yaml
  17. -----
  18. apiVersion: v1
  19. kind: Service
  20. metadata:
  21.   name: wordpress-mysql
  22.   labels:
  23.     app: wordpress
  24. spec:
  25.   ports:
  26.     - port: 3306
  27.   selector:
  28.     app: wordpress
  29.     tier: mysql
  30.   clusterIP: None
  31. ---
  32. apiVersion: v1
  33. kind: PersistentVolumeClaim
  34. metadata:
  35.   name: mysql-pv-claim
  36.   labels:
  37.     app: wordpress
  38. spec:
  39.   accessModes:
  40.    - ReadWriteOnce
  41.   resources:
  42.     requests:
  43.       storage: 20Gi
  44. ---
  45. apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
  46. kind: Deployment
  47. metadata:
  48.   name: wordpress-mysql
  49.   labels:
  50.     app: wordpress
  51. spec:
  52.   selector:
  53.     matchLabels:
  54.       app: wordpress
  55.       tier: mysql
  56.   strategy:
  57.     type: Recreate
  58.   template:
  59.     metadata:
  60.       labels:
  61.         app: wordpress
  62.         tier: mysql
  63.     spec:
  64.       containers:
  65.       - image: mysql:5.6
  66.         name: mysql
  67.         env:
  68.         - name: MYSQL_ROOT_PASSWORD
  69.           valueFrom:
  70.             secretKeyRef:
  71.               name: mysql-pass
  72.               key: password
  73.         ports:
  74.         - containerPort: 3306
  75.           name: mysql
  76.         volumeMounts:
  77.         - name: mysql-persistent-storage
  78.           mountPath: /var/lib/mysql
  79.       volumes:
  80.       - name: mysql-persistent-storage
  81.         persistentVolumeClaim:
  82.           claimName: mysql-pv-claim
  83.  
  84.  
  85. wordpress-deployment.yaml
  86. ------
  87. apiVersion: v1
  88. kind: Service
  89. metadata:
  90.   name: wordpress
  91.   labels:
  92.     app: wordpress
  93. spec:
  94.   ports:
  95.     - port: 80
  96.   selector:
  97.     app: wordpress
  98.     tier: frontend
  99.   type: LoadBalancer
  100. ---
  101. apiVersion: v1
  102. kind: PersistentVolumeClaim
  103. metadata:
  104.   name: wp-pv-claim
  105.   labels:
  106.     app: wordpress
  107. spec:
  108.   accessModes:
  109.    - ReadWriteOnce
  110.   resources:
  111.     requests:
  112.       storage: 10Gi
  113. ---
  114. apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
  115. kind: Deployment
  116. metadata:
  117.   name: wordpress
  118.   labels:
  119.     app: wordpress
  120. spec:
  121.   selector:
  122.     matchLabels:
  123.       app: wordpress
  124.       tier: frontend
  125.   strategy:
  126.     type: Recreate
  127.   template:
  128.     metadata:
  129.       labels:
  130.         app: wordpress
  131.         tier: frontend
  132.     spec:
  133.       containers:
  134.       - image: wordpress:4.8-apache
  135.         name: wordpress
  136.         env:
  137.         - name: WORDPRESS_DB_HOST
  138.           value: wordpress-mysql
  139.         - name: WORDPRESS_DB_PASSWORD
  140.           valueFrom:
  141.             secretKeyRef:
  142.               name: mysql-pass
  143.               key: password
  144.         ports:
  145.         - containerPort: 80
  146.           name: wordpress
  147.         volumeMounts:
  148.         - name: wordpress-persistent-storage
  149.           mountPath: /var/www/html
  150.       volumes:
  151.       - name: wordpress-persistent-storage
  152.         persistentVolumeClaim:
  153.           claimName: wp-pv-claim
  154.  
  155.  
Advertisement
Add Comment
Please, Sign In to add comment