代码之家  ›  专栏  ›  技术社区  ›  Oliver Hader

如何重新定位已移动到不同目录的DDEV项目?

  •  0
  • Oliver Hader  · 技术社区  · 7 年前

    脚本

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

    无法获取项目:stat/home/old path/project name:无 文件或目录

    问题

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

    2 回复  |  直到 7 年前
        1
  •  2
  •   rfay    7 年前

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

        2
  •  1
  •   Oliver Hader    7 年前

    分析

    ~/.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 .使用在新目录中再次启动DDEV ddev start 现在又开始工作了。。。

    总结

    鉴于DDEV项目的名称 project-name ...

    docker rm ddev-project-name-web
    cd /home/new-path/project-name
    ddev start
    
        3
  •  1
  •   arx-e    6 年前

    有一个名为 global_config.yaml 位于用户家中的 .ddev 文件夹 (在我的windows电脑上是 C:\Users\username\.ddev ).

    在这个文件中,你可以找到这个部分 project_info: 列出你的项目和它们的路径。如果移动了项目文件,可以在此处输入新路径。

    如果你把文件移到另一个磁盘,你也必须去docker Settings>Resources>File Sharing 并确保新磁盘已在此处启用并已绑定安装。

        4
  •  0
  •   Robbozinoz    5 年前

    也可以使用 ddev rm--未列出 一旦你用过 ddev rm。 不确定它是否是最近添加到CLI的

        5
  •  0
  •   Rogoit    4 年前

    我不得不做一个“ddev停止——取消列出项目名称”和一个“ddev开始”。不能说我是否因为是sqlite而丢失了数据。

    推荐文章