How to initialize mysql container when created on Kubernetes?(在 Kubernetes 上创建时如何初始化 mysql 容器?)
问题描述
我想在容器的 MySQL 上设置初始数据.在docker-compose.yml中,这样的代码可以在运行容器时创建初始数据.
I want to set initial data on MySQL of container. In docker-compose.yml, such code can create initial data when running container.
volumes:
- db:/var/lib/mysql
- "./docker/mysql/conf.d:/etc/mysql/conf.d"
- "./docker/mysql/init.d:/docker-entrypoint-initdb.d"
但是,如何在运行时在 Kubernetes 上创建初始数据?
However, how can I create initial data on Kubernetes when running?
推荐答案
根据 MySQL Docker 镜像 README,与容器启动时数据初始化相关的部分是确保您所有的初始化文件都挂载到容器的/docker-entrypoint-initdb.d
文件夹中.
According to the MySQL Docker image README, the part that is relevant to data initialization on container start-up is to ensure all your initialization files are mount to the container's /docker-entrypoint-initdb.d
folder.
您可以在 ConfigMap
中定义您的初始数据,并像这样在您的 pod 中挂载相应的卷:
You can define your initial data in a ConfigMap
, and mount the corresponding volume in your pod like this:
apiVersion: v1
kind: Pod
metadata:
name: mysql
spec:
containers:
- name: mysql
image: mysql
ports:
- containerPort: 3306
volumeMounts:
- name: mysql-initdb
mountPath: /docker-entrypoint-initdb.d
volumes:
- name: mysql-initdb
configMap:
name: mysql-initdb-config
---
apiVersion: v1
kind: ConfigMap
metadata:
name: mysql-initdb-config
data:
initdb.sql: |
CREATE TABLE friends (id INT, name VARCHAR(256), age INT, gender VARCHAR(3));
INSERT INTO friends VALUES (1, 'John Smith', 32, 'm');
INSERT INTO friends VALUES (2, 'Lilian Worksmith', 29, 'f');
INSERT INTO friends VALUES (3, 'Michael Rupert', 27, 'm');
这篇关于在 Kubernetes 上创建时如何初始化 mysql 容器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Kubernetes 上创建时如何初始化 mysql 容器?
基础教程推荐
- 在 VB.NET 中更新 SQL Server DateTime 列 2021-01-01
- Sql Server 字符串到日期的转换 2021-01-01
- SQL Server 中单行 MERGE/upsert 的语法 2021-01-01
- SQL Server:只有 GROUP BY 中的最后一个条目 2021-01-01
- 无法在 ubuntu 中启动 mysql 服务器 2021-01-01
- 如何在 SQL Server 的嵌套过程中处理事务? 2021-01-01
- 将数据从 MS SQL 迁移到 PostgreSQL? 2022-01-01
- 使用pyodbc“不安全"的Python多处理和数据库访问? 2022-01-01
- SQL Server 2016更改对象所有者 2022-01-01
- ERROR 2006 (HY000): MySQL 服务器已经消失 2021-01-01