gpt4 book ai didi

visual-studio - 通过 Docker 使用自定义 Visual Studio 运行配置

转载 作者:IT老高 更新时间:2023-10-28 21:39:34 26 4
gpt4 key购买 nike

我正在 Visual Studio 2017 中使用 Docker 设置 .NET Core 项目。我已经创建了项目并将 docker-compose 添加到解决方案中,一切正常。

但不知何故,VS 不会使用任何配置构建和运行 Docker,除了 DebugRelease

我创建了名为 Preproduction 的解决方案和项目配置并选择了它,并创建了一个 docker-compose.vs.preproduction.yml 文件。

但是当我运行预生产配置时,项目运行就像选择了 Release 一样。构建输出控制台还显示以下内容:

调试

*docker-compose -f "docker-compose.yml" -f "docker-compose.override.yml" -f "docker-compose.vs.debug.yml" -p dockercompose3979710767*

发布

*docker-compose -f "docker-compose.yml" -f "docker-compose.override.yml" -f "docker-compose.vs.release.yml" -p dockercompose3979710767*

预生产

*docker-compose -f "docker-compose.yml" -f "docker-compose.override.yml" -f "docker-compose.vs.release.yml" -p dockercompose3979710767*

注意第二个 yml 文件。不知何故,它使用了发布文件,而不是我添加的自定义配置文件。

有人知道如何解决这个问题,所以 docker 会使用我的自定义配置吗?

最佳答案

很遗憾,这是不可能的。在花了很多时间弄清楚之后,事实证明这两个文件名被硬编码到了一个 DLL 中。不是“DEBUG”的所有内容都将使用“RELEASE”文件。

通过从不同文件夹引用它们来使用不同的 docker-compose.yml 文件可能是一种解决方案,但由于它不是标准项目而是 Docker 项目,因此您无权访问构建后事件来复制所需的那里的文件。此外,您不能拥有多个 Dockerfile,因为它也是基于名称约定的。

您可以使用一个版本进行开发和测试,在包含的文件中定义并创建一个脚本,该脚本根据您现有的撰写文件和您的额外文件手动构建所有内容。

关于visual-studio - 通过 Docker 使用自定义 Visual Studio 运行配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44280024/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com