0

设想

  • /home/old-path/project-nameDDEV项目已从/home/new-path/project-name
  • 在新位置执行ddev start显示以下错误

无法获取项目:stat /home/old-path/project-name:没有这样的文件或目录

问题

需要哪些步骤才能“重新定位”目录并使 DDEV 重新启动并运行?

4

5 回答 5

2

ddev rm -a停止所有正在运行或停止的项目,然后ddev start在新目录中。我唯一能猜到的是该项目已停止在旧目录中。ddev 项目不需要重定位,除了运行或停止的容器中的完整路径外,不知道它们所在的目录。

于 2019-01-09T17:51:03.770 回答
1

分析

由于 DDEV 列出了正确的旧路径名,因此它也必须存储在某处。我分析了 directory ~/.ddev/project-name/,但在那里找不到任何指向旧路径名的指针。似乎这些信息存储在其他地方。

码头集装箱

执行docker ps -a | grep project-name显示如下:

1f4eb31fc94e        drud/ddev-webserver:v1.3.0        "/start.sh"              2 months ago        Exited (0) 2 months ago                                                                                                ddev-project-name-web
052ecb7c3e1b        drud/phpmyadmin:v1.3.0            "/run.sh phpmyadmin"     2 months ago        Exited (0) 2 months ago                                                                                                ddev-project-name-dba
b9d71147a54f        drud/ddev-dbserver:v1.3.0         "/docker-entrypoint.…"   2 months ago        Exited (0) 2 months ago                                                                                                ddev-project-name-db

并执行docker inspect ddev-project-name-web | grep '/home/old-path/project-name'显示附加信息:

"/home/old-path/project-name/.ddev:/mnt/ddev_config:ro",
"/home/old-path/project-name:/var/www/html:cached"
"Source": "/home/old-path/project-name/.ddev",
"Source": "/home/old-path/project-name",
"com.ddev.approot": "/home/old-path/project-name",

答对了!旧路径名存储在 Docker 容器中。而且由于我的(有价值的)源仅安装到此 Docker 容器,因此通过执行删除此容器似乎是安全的docker rm ddev-project-name-web. 使用 now 在新目录中再次启动 DDEVddev start可以再次工作...

概括

鉴于 DDEV 项目被命名为project-name...

docker rm ddev-project-name-web
cd /home/new-path/project-name
ddev start
于 2019-01-09T18:01:59.717 回答
1

有一个名为的文件global_config.yaml位于用户的主.ddev文件夹中(在我的 Windows 机器上是C:\Users\username\.ddev)。

在此文件中,您将找到project_info:列出您的项目及其路径的部分。如果您移动了项目文件,您可以在此处输入新路径。

如果您将文件移动到另一个磁盘,您还必须转到 dockerSettings>Resources>File Sharing并确保在此处启用新磁盘并绑定挂载 cab。

于 2020-02-17T22:10:27.297 回答
0

使用 ddev rm后,还要使用ddev rm --unlist 不确定它是否是最近添加到 CLI 的

于 2020-07-08T04:40:03.853 回答
0

我必须执行“ddev stop --unlist projectname”并执行“ddev start”。不能说我是否丢失数据,因为它是一个 sqlite。

于 2021-09-26T09:47:57.173 回答