Как создать MySQL контейнер с исходными данными в kubernetes? - PullRequest
0 голосов
/ 14 марта 2019

Я хочу установить исходные данные (файл сценария, который создает базу данных и таблицу) на MySQL контейнера. У меня есть другой модуль, который будет общаться с модулем mysql и вставлять данные в таблицу. Если я удаляю модуль mysql, он создает другое модуль, но ранее вставленные данные потеряны. Я не хочу потерять данные, которые были вставлены перед удалением модуля. Как это сделать? Я создал pv и pvc, и данные удаляются после удаления модуля.

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

Это развертывание. Yaml

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

1 Ответ

1 голос
/ 14 марта 2019

Напишите скрипт и прикрепите его к крюку запуска сообщения. Убедитесь, что база данных присутствует и в сети. Затем продолжайте и запускайте команды sql для создания необходимых данных

...