使用Laravel Sail与多个docker组合文件



我有多个docker compose配置文件:docker-compose.ymldocker-compose.dev.yml,当我使用带有arg-f docker-compose.dev.yml的sail时,除了docker composed二进制命令外,我不能使用任何命令。

发生这种情况是因为在sail内部,像artisancomposer等二进制命令执行如下:

elif [ "$1" == "artisan" ] || [ "$1" == "art" ];

因此,如果我们使用-f docker-compose.dev.ymlarg,artisan命令将是第三个,而不是第一个,因此此代码正在运行

# Pass unknown commands to the "docker-compose" binary...
else
docker-compose "$@"
fi

如何解决这个问题?

这很简单。

你可以像使用docker-compose一样使用sail,所以要使用不同的docker-compase.yml文件,你可以使用sail作为:

sail -f your-custom-docker-compose.yml up -d

最新更新