如何使用“ddev import-db”并指定要导入的路径/文件

Ber*_*man 0 docker ddev

我开始使用 Docker 并需要建立一个网站项目。我还需要通过命令导入数据库ddev import-db --file=dumpfile.sql.gz

但我需要把这个 dumpfile.sql.gz 文件放在哪里?我尝试将其放在项目的根文件夹中,但运行上述命令后,出现此错误:

Failed to import database db for webproject: Unable to validate import asset dumpfile.sql.gz: invalid asset: file not found
Run Code Online (Sandbox Code Playgroud)

抱歉,如果我可能缺少一些关于 Docker 和文件导入的关键概念理解,但我不理解这个问题,并且谷歌搜索这个错误(甚至是部分错误)绝对不会返回任何故障排除结果。

rfa*_*fay 5

你不需要了解任何关于 docker 的知识就可以使用ddev import-db,如果你使用的话,有很多例子ddev import-db -h

ddev import-db在您的工作站上运行,而不是在容器内运行。您要导入的文件也在您的工作站上。

但您缺少的重要一点是您需要文件的路径或相对路径。因此,如果文件位于 /tmp 中,则为

ddev import-db --file=/tmp/db.sql.gz

如果该文件位于运行命令的相对目录中,例如,如果它位于名为“dumps”的目录中,该目录是当前目录的子目录,则

ddev import-db --file=./dumps/db.sql.gz

或者

ddev import-db --file=dumps/db.sql.gz

这只是为命令提供一种查找文件的方法。

示例来自ddev import-db -h

Examples:
ddev import-db
ddev import-db --file=.tarballs/junk.sql
ddev import-db --file=.tarballs/junk.sql.gz
ddev import-db --database=newdb --file=.tarballs/db.sql.gz
ddev import-db --file=.tarballs/db.sql.bz2
ddev import-db --file=.tarballs/db.sql.xz
ddev import-db <db.sql
ddev import-db someproject <db.sql
gzip -dc db.sql.gz | ddev import-db
Run Code Online (Sandbox Code Playgroud)

来自文档: