我已经使用DDEV了几天,这很棒。

但是我发现如果我运行ddev ssh以ssh进入容器,并通过npm / aptitude等安装软件包,或者如果我在~/主目录中创建新文件,有时当我ddev stop > ddev startddev restart时,这些软件包/文件会被删除/重置。

并非总是发生,只是有时。我已经将其重新启动了很多次,并且无法确定何时擦除包/文件以及何时不擦除它们。

我已经浏览了配置文件,文档和github问题队列,但找不到任何相关信息。我在装有Homebrew的Mac上运行ddev。我拥有最新版本的Docker和Docker Compose。

我的问题是:如何做到这一点,以便我重新启动ddev时安装的软件包/文件能够持久保存?

非常感谢。

最佳答案

当您只是ddev ssh并安装时,重新创建或rm容器将丢弃所有内容。

编辑:从ddev v1.8.0开始,您只能使用webimage_additional_packages: [php7.1-ldap],请参阅docs

原始方法:

docs尝试这个启动后挂钩示例。这种通用方法应该能很好地工作。

hooks:
    post-start:
      # Install php modules and then tell php-fpm to reload
      - exec: "sudo apt-get update && sudo apt-get install -y php7.1-ldap php7.1-tidy && killall -HUP php-fpm"

关于docker - 有时会在ddev重新启动(或ddev停止,启动)时重置已安装的软件包和/home/*文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53771944/

10-16 11:39