首页 > 解决方案 > Laradock:docker-compose.yml 在 Windows 上是无效格式 (PORT[/PROTOCOL])

问题描述

我尝试在 Windows 上遵循 Laradock 入门教程:http: //laradock.io/getting-started/

我有以下工具:

Docker version: 20.10.5, build 55c4c88
git version: 2.30.2.windows.1
Windows 10 20H2(19042.867)

尝试启动时,我卡在了这一步:docker-compose up -d nginx mysql

然后我得到这些错误:

ERROR: The Compose file '.\docker-compose.yml' is invalid because:
services.proxy.expose is invalid: should be of the format 'PORT[/PROTOCOL]'
services.proxy2.expose is invalid: should be of the format 'PORT[/PROTOCOL]'
services.proxy.ports contains an invalid type, it should be a number, or an object
services.proxy2.ports contains an invalid type, it should be a number, or an object
...
services.sqs.ports contains an invalid type, it should be a number, or an object
services.sqs.ports contains an invalid type, it should be a number, or an object
services.traefik.ports value [':', ':', ':'] has non-unique elements

我对 repo 所做的唯一更改是添加 env 文件和这一行:

# Point to the path of your applications code on your host
APP_CODE_PATH_HOST=../project-z/

我还创建了文件夹project-z

我看到了这段文字引用,但不明白:

根据主机的操作系统,您可能需要更改 COMPOSE_FILE 的值。在 Mac OS 上运行 Laradock 时,要使用的正确文件分隔符是 :。在 Windows 环境下运行 Laradock 时,多个文件必须用 ; 分隔。

但认为这可能与我的问题有关,我需要更新一些内容以使其在 Windows 上运行。

知道有什么问题吗?由于它几乎是开箱即用的,我认为它与我的 Windows 环境有关

标签: windowsdockerdocker-composelaradock

解决方案


发布此问题后,我直接找到了解决方案。

我很容易忘记添加“。” 在创建文件时的 env 之前。

我在这里找到了解决方案:https ://github.com/laradock/laradock/issues/1437


推荐阅读