【问题标题】:How to start a mysql container in Kubernetes with sample data?如何使用示例数据在 Kubernetes 中启动 mysql 容器?
【发布时间】:2019-10-20 10:53:30
【问题描述】:

我需要在 Kubernetes 中启动一个 MySQL 容器,其中包含一个数据库、一个模式和示例数据。

我尝试在Kubernetes yaml中使用参数“command”,但是在执行的时候,db仍然没有启动。

        - image: mysql:5.7.24
          name: database
          command:
            [
              '/usr/bin/mysql -u root -e "CREATE DATABASE IF NOT EXISTS mydbname"',
            ]
          env:
            - name: MYSQL_ALLOW_EMPTY_PASSWORD
              value: "1"

【问题讨论】:

标签: mysql kubernetes google-kubernetes-engine dump


【解决方案1】:

解决添加

      volumeMounts:
        - name: initdb
          mountPath: /docker-entrypoint-initdb.d

...
  volumes:
    - name: initdb
      configMap:
        name: initdb-config

...
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: initdb-config
data:
  initdb.sql: |
      mysqlquery

【讨论】:

  • 你能用更多的数据解释一下吗,我有一些疑问
【解决方案2】:

你可以先创建mysql的容器,然后再导入mysql的数据,这样就可以了。

您可以创建 pvc 卷并在没有任何数据库的情况下启动黑色容器。 您可以使用命令 exec 将 sql while 和数据导入数据库,这将在容器内创建数据库和示例数据。

启动容器并使用 exec 模式进入容器内部并创建一个数据库,然后运行此命令

kubectl exec -i <container name> -- mysql -h <hostname> -u <username> -p<password> <databasename> > databasefile.sql

【讨论】:

    猜你喜欢
    • 2019-08-05
    • 2019-11-18
    • 1970-01-01
    • 2017-10-26
    • 2015-05-12
    • 1970-01-01
    • 2017-01-27
    • 1970-01-01
    • 2016-02-21
    相关资源
    最近更新 更多