将mysql数据导入kubernetes pod

有谁知道如何将我的dump.sql文件中的数据导入到kubernetes窗格中;

直接,与处理docker容器相同的方式:

docker exec -i container_name mysql -uroot --password=secret database < Dump.sql 

或者使用存储在现有docker箱容器中的数据并将其传递到吊舱。

要回答你的具体问题:

您可以将kubectl exec放入您的容器中,以便在其中运行命令。 您可能需要首先确保容器有权访问文件,也许可以将其存储在群集可以访问的位置(networking?),然后在容器中使用wget / curl使其可用。 甚至可以开放与kubectl exec的交互式会话。

但是,增加通用性的方法是:

  1. 创build一个服务 ,使您可以从集群外部访问在pod上运行的mysql实例,并将您的本地mysql客户端连接到该实例。

  2. 如果每次启动这样的mysql pod时都要执行这个初始化操作,那么可以将它存储在持久卷上,并且可以在启动时执行脚本中的脚本。

  3. 如果在启动该窗口时通常需要复制多个数据片段,请查看init容器以获取该数据。