当前位置: 首页 > 知识库问答 >
问题:

导出和导入docker数据容器

郜德容
2023-03-14

我是docker的新手,在运送数据容器时遇到了一个问题。好的,通常我们会发送图像,用户可以根据需要从该图像中启动容器,对吗?

现在我也想运送一些数据——所以我做了一个数据容器:

docker create -v /dbdata --name dbdata phusion/baseimage

接下来,我简单地启动了一个bash,并将一些数据插入到我的数据容器中

docker run --volumes-from dbdata -i -t phusion/baseimage /bin/bash
echo "foo" > /dbdata/bar.txt
exit

现在我想允许我的团队成员使用相同的数据(脱机),所以我想“发送”我的数据容器给他们。因此我使用

docker export dbdata > /tmp/cool_data.tar

但是当我重新导入这个

cat /tmp/data.tar | sudo docker import - dbdata2

我不能使用这个“容器”,因为它似乎是一个图像

docker run --volumes-from dbdata2 -i -t phusion/baseimage /bin/bash
FATA[0000] Error response from daemon: Container dbdata2 not found. Impossible to mount its volumes 

如何正确导出和导入数据容器?

共有3个答案

范凡
2023-03-14

我在以下Dockerfile上运气不错:

from scratch

ADD install_theGreatSoftwarePkg /install
VOLUME /install

然后我构建并创建:

docker build -t greatSoftwareInstallImage .
docker create -t --name=greatSoftwareMedia greatSoftwareInstallImage /bin/true
曹泉
2023-03-14

您需要先用此图像制作一个容器。运行此操作:

docker create -v /dbdata --name dbdata2 dbdata2

有关更多详细信息,请查看创建和装载数据卷容器

石臻
2023-03-14

您不能在这样的卷中导出和导入数据-卷根本不包括在导出/导入中。

但是,您不需要这样做,只需对卷映射到的目录进行压缩或压缩,并将其发送给您的同事即可。然后,他们可以使用这些文件创建自己的数据容器。

您可能还想看看flocker,它可以帮助您迁移容器和数据。

 类似资料:
  • 问题内容: 我正在尝试编写脚本来导入数据库文件。我编写了脚本来导出文件,如下所示: 现在,我希望能够导入该数据库。我试过了 : 但是我不允许执行多个语句。有没有办法让它直接运行SQL脚本? 问题答案: 文件资料。

  • 我有一个nginx的dockerfile。 我有一个docker-compose.yml文件。 运行后 docker合成 它从名为“web”的dockerfile创建图像,并下载redis图像。它还创建了名为“web\u web1”的图像和当我检查 docker ps nginx和redis服务都在运行。我的问题是,如果我将新创建的映像提交到另一个映像并导出容器并导入到另一个环境,在执行docke

  • 数据的导入、导出任务一旦成功建立,结果将以邮件的形式发送到创建任务的用户邮箱里。 数据导出 接口 POST https://cloud.minapp.com/userve/v1/table/:table_id/export/ 其中 table_id 是数据表的 ID 请求参数 参数 类型 必填 说明 file_type String 是 导出文件的格式,支持 csv、json 格式 mode St

  • 数据的导入、导出任务一旦成功建立,结果将以邮件的形式发送到创建任务的用户邮箱里。 数据导出 接口 POST https://cloud.minapp.com/oserve/v1/table/:table_id/export/ 其中 table_id 是数据表的 ID 请求参数 参数 类型 必填 说明 file_type String 是 导出文件的格式,支持 csv、json 格式 mode St

  • 然后 但是当我执行命令时,我出现了这个错误知道我的数据库已有表。我做错了吗?

  • 导出(export)和导入(import)指令有几种语法变体。 在上一节,我们看到了一个简单的用法,现在让我们来探索更多示例吧。 在声明前导出 我们可以通过在声明之前放置 export 来标记任意声明为导出,无论声明的是变量,函数还是类都可以。 例如,这里的所有导出均有效: // 导出数组 export let months = ['Jan', 'Feb', 'Mar','Apr', 'Aug',