繁体   English   中英

如何在kubernetes中使用初始数据创建mysql容器?

[英]How to create mysql container with initial data in kubernetes?

我想在容器的MySQL上设置初始数据(创建数据库和表的脚本文件)。我有另一个Pod,它将与mysql Pod对话并在表中插入数据。如果我删除mysql Pod,它将创建另一个Pod以前插入的数据会丢失。我不想丢失在删除吊舱之前插入的数据。如何完成此操作? 我已经创建了pv和pvc,并且删除了pod之后数据丢失了。

kind: PersistentVolume
apiVersion: v1
metadata:
  name: mysql-initdb-pv-volume
  labels:
    type: local
    app: mysql
spec:
  storageClassName: manual
  capacity:
    storage: 1Mi
  accessModes:
    - ReadOnlyMany
  hostPath:
    path: "/home/path to script file/script"
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: mysql-initdb-pv-claim
  labels:
    app: mysql
spec:
  storageClassName: manual
  accessModes:
    - ReadOnlyMany
  resources:
    requests:
      storage: 1Mi

这是Deployment.yaml

       volumeMounts:
    - name: mysql-initdb
      mountPath: /docker-entrypoint-initdb.d
  volumes:
  - name: mysql-initdb
    persistentVolumeClaim:
      claimName: mysql-initdb-pv-claim

编写脚本并将其附加到发布开始挂钩。 验证数据库是否存在并在线。 然后继续运行sql命令以创建所需的数据

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM