Virtualbox Docker-Machine“无效的卷规范”

问题描述

我尝试了不同的方法将COMPOSE_CONVERT_WINDOWS_PATHS设置为1,但是我不断收到以下错误消息:

ERROR: FOR docker_test Cannot create container for service test: 
invalid volume specification: 
'C:\Users\my_user\test\cert_file.pfx:/root/.aspnet/https/https_cert.pfx:ro'

到目前为止,我尝试了所有可以在网上找到的内容。这些是我的设置。谁能发现问题?我在Windows机器上使用Docker-toolbox而不是Windows的Docker,因为我也使用Virtualbox(并且我无法同时运行VT-x和Hypervisor)。我猜我一直在收到此错误,因为也许必须在其他位置设置此环境变量。

最后一部分docker-compose.yml

   secrets:
      - source: cert
        target: /root/.aspnet/https/https_cert.pfx
secrets:
    cert:
        file: cert_file.pfx

config.yml(/Users/my_user/.docker/machine/machines/default/config.json

HostOptions: {
    "Env": [
        "COMPOSE_CONVERT_WINDOWS_PATHS=1"
    ]
}

Powershell:

PS C:\> $env:COMPOSE_CONVERT_WINDOWS_PATHS=1

谁能发现问题?

解决方法

Microsoft的基础映像似乎在Docker Toolbox中存在一些问题,请参见https://github.com/microsoft/DockerTools/issues/177#issuecomment-481332463。因此,docker-compose.yml中的以下行无法将文件复制到容器中:

   secrets:
      - source: cert
        target: /root/.aspnet/https/https_cert.pfx
secrets:
    cert:
        file: cert_file.pfx

该错误尚不清楚,因为您认为问题不是COMPOSE_CONVERT_WINDOWS_PATHS

此问题的解决方案是用简单的体积替换行:

volumes:
    - ./cert_file.pfx:/root.aspnet/https/https_cert.pfx

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...