我在 docker 中构建工艺 cms,执行时出现以下错误docker-compose up
:
错误:对于craftcms无法启动服务craftcms:OCI运行时创建失败:container_linux.go:344:启动容器进程导致“process_linux.go:424:容器初始化导致\”rootfs_linux.go:58:安装\\“/host_mnt/c /src/composer.lock\\" to rootfs \\"/var/lib/docker/overlay2/b7084475699f911f17d38746b21b1b9694fedf6e096a4080109d429fa687a6db/merged\\" at \\"/var/lib/docker/overlay2/b7084475699f911f17d38746b21b1b9694fedf6e096a4080109d429fa687a6db/merged/var/www/ composer.lock\\" 导致 \\"not a directory\\"\"":未知:您是否尝试将目录挂载到文件上(反之亦然)?检查指定的主机路径是否存在并且是预期的类型错误:启动项目时遇到错误。
显然,Windows 操作系统中的挂载目录与 Linux 操作系统不同。你能帮我解决这个问题吗?
更新
在 docker-compose.yml 中,这是我挂载文件的位置:
craftcms:
build:
context: .
dockerfile: ./infrastructure/docker/php-fpm/Dockerfile
expose:
- 9000
volumes:
- cpresources:/var/www/web/cpresources
- ./src/vendor:/var/www/vendor
- ./src/composer.json:/var/www/composer.json
- ./src/composer.lock:/var/www/composer.lock
- ./src/config:/var/www/config
- ./src/modules:/var/www/modules
- ./src/templates:/var/www/templates
- ./src/web:/var/www/web