Shopware 6:Docker exec chown 在 Git Bash 脚本中失败,并显示“没有这样的文件或目录”

Shopware 6: Docker exec chown fails in Git Bash script with "No such file or directory"

提问人:mlodhi 提问时间:11/15/2023 更新时间:11/15/2023 访问量:31

问:

我有一个 Git Bash 脚本,可以运行一些 Docker 命令来设置我的 Shopware 容器。其中一个命令用于在容器内的路径上运行:docker execsudo chown

docker exec -it $SHOPWARE_CONTAINER_ID sudo chown www-data /var/www/html/custom/plugins/shopware-ai-demodata/src/Service/Generator/

当使用 docker 桌面在容器内运行命令时,这工作正常。但是,如果我运行脚本,它会在 Git Bash(Windows 操作系统)中出现错误:

chown: cannot access 'C:/Program Files/Git/var/www/html/custom/plugins/shopware-ai-demodata/src/Service/Generator/': No such file or directory

似乎它正在尝试直接在我的 Windows 主机上运行 chown,而不是在 Docker 容器内运行,因为该路径显然在 Windows 上本身不存在。如何通过脚本使此命令在商店容器内工作?

docker git-bash shopware6 chown

评论


答:

2赞 BMitch 11/15/2023 #1

这是 Git bash 试图在自己的路径中将诸如可执行文件之类的内容扩展为可执行文件。要禁用它,请将第一个斜杠加倍:/bin/sh

docker exec -it $SHOPWARE_CONTAINER_ID sudo chown www-data //var/www/html/custom/plugins/shopware-ai-demodata/src/Service/Generator/