Skip to main content

MySql

MySql 

PV

kind: PersistentVolume
apiVersion: v1
metadata:
  name: mysql-pv-volume
  namespace: tomcat-apps
  labels:
    type: local
spec:
  storageClassName: manual
  capacity:
    storage: 20Gi
  accessModes:
    - ReadWriteOnce
  hostPath:
    path: "/data/tomcat/mysql"

---

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: mysql-pv-claim
  namespace: tomcat-apps
spec:
  storageClassName: manual
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 20Gi


MySql DBMS

apiVersion: apps/v1
kind: Deployment
metadata:
  name: tomcat-mysql
  namespace: tomcat-apps
spec:
  replicas: 1
  selector:
    matchLabels:
      app: products
      department: tomcat-mysql
  template:
    metadata:
      labels:
        app: products
        department: tomcat-mysql
    spec:
      containers:
        - name: mysql
          image: mysql:5.7
          ports:
            - containerPort: 3306
          volumeMounts:
            - mountPath: "/var/lib/mysql"
              name: mysql-persistent-storage
              readOnly: false
          env:
          - name: PUID
            value: "1000"
          - name: PGID
            value: "1000"
          - name: MYSQL_ROOT_PASSWORD
            value: "xxxxxxxxxxxxxxx"
          - name: MYSQL_DATABASE
            value: "mysql"
          - name: MYSQL_USER
            value: "xxxxxxxxx"
          - name: MYSQL_PASSWORD
            value: "xxxxxxxxxxx"
          - name: TZ
            value: "Asia/Seoul"
      volumes:
        - name: mysql-persistent-storage
          persistentVolumeClaim:
            claimName: mysql-pv-claim

---

apiVersion: v1
kind: Service
metadata:
  name: tomcat-mysql-service
  namespace: tomcat-apps
spec:
  type: LoadBalancer
  externalIPs:
   - 192.168.0.100
  selector:
    app: products
    department: tomcat-mysql
  ports:
  - protocol: TCP
    port: 33306 
    targetPort: 3306 

---