docker - 与 WORKDIR 相关的映射卷

如何使用 docker-compose 中的 Image WORKDIR 映射卷?

我正在尝试使用

services:
    my-app:
        image: <image>
        volumes:
            - ./scripts:./scripts

但是当我尝试执行 docker-compose up -d 时,我收到以下错误:
Cannot create container for service my-app: invalid volume spec "scripts": invalid volume specification: 'scripts': invalid mount config for type "volume": invalid mount path: 'scripts' mount path must be absolute

有什么办法可以映射我的scripts图像的 WORKDIR 中的文件夹而不知道该文件夹在哪里?

最佳答案

不,默认情况下无法做到这一点。但是,如果您愿意,可以使用解决方法

services:
    my-app:
        image: <image>
        volumes:
            - ./scripts:/scripts
        command: bash -c "ln -s /scripts scripts && orignal command"

但这需要您事先了解命令。因此,您要么事先知道命令,要么事先知道 WORKDIR。

您还可以将工作目录更改为您想要的任何其他目录。如果您不想覆盖该命令,则下面是另一个可能的选项
docker-compose up -d
docker-compose exec my-app ln -s /scripts scripts

https://stackoverflow.com/questions/46183860/

相关文章:

python - 'import cv' 之后的 `Fatal Python error: PyTh

visual-c++ - 如何使用OpenCV将Bayer转换为RGB,反之亦然

docker - chown : changing ownership of '/var/lib/m

visual-studio-2010 - 如何在VS2010 Windows 7中安装tbb_ded

opencv - 将CvSeq转换为CvMat

image-processing - openCV2.3中卷积方法的高斯模糊错误

iphone - 如何改善iPhone应用程序的边缘检测?

image-processing - 有关cvPerspectiveTransform的OpenCV

opencv - Eclipse中的OpenCV编译错误

opencv - 段错误 OpenCV/Facedetect.c/CentOS 6 64Bit