在开发wep应用程序时处理docker容器数据



我为安装magento2提取了此映像。

现在我正在尝试在主机中获取容器/var/www/html数据,之后我可以用phpstorm处理。

我试过这样做,但它覆盖了容器/var/www/html中的所有内容

docker run --name development-phase -d -p 5000:80 -v /u01/magento2:/var/www/html magento2

创建卷时

数据流:从主机/u01/magento2到容器/var/www/html

但我在找

数据流应该是从容器/var/www/html到主机/u01/magento2

我提到了一些堆栈溢出链接,都建议在创建卷之前将容器数据复制到主机,在我的情况下,docker cp命令影响了magento2的一些先决条件设置,因此页面无法正确加载。

这是Docker:中卷的行为

  • -v /host/path:/container/path不复制数据
  • -v /container/path将复制数据并创建具有随机名称的新卷

所以,你可能想试试

docker run --name development-phase -d -p 5000:80 -v /var/www/html magento2

然后用docker inspect 求出"Destination":"/var/www/html"的属性Source值的随机路径

docker inspect --format "{{json .Mounts}}" development-phase

更具可读性

docker inspect -f "{{json .Mounts}}" development-phase 
 | jq '.[] | select(.Destination | contains("/var/www/html"))'

最新更新