unit-testing - 带有复制命令和相对路径的 Dockerfile

标签 unit-testing docker .net-core docker-compose dockerfile

在 dockerfile 中使用具有相对路径的复制命令有相同的方法吗?我尝试使用:

COPY ./../folder/*.csproj ./

OBS。:我的结构文件夹(我在项目测试上运行dockerfile,另一个文件在项目控制台文件夹中)是:

|- 项目控制台

|- 项目测试

我收到以下错误:

错误:服务“应用程序”无法构建:复制失败:未指定源文件。

我的目的是在同一个 docker 中有两个项目。我有一个 dotnet 核心控制台,另一个带有统一测试 (NUnity),我尝试在 docker 中运行统一测试。

更新

是否可以使用多阶段:https://docs.docker.com/develop/develop-images/multistage-build/

或者将 docker-compose 与 build 一起使用:https://docs.docker.com/engine/reference/commandline/build/

喜欢:
services: 

worker:
    build:
      context: ./workers
      dockerfile: Dockerfile

最佳答案

引用:Allow Dockerfile from outside build-context

你可以试试这个方法

$ cd project-console
$ docker build -f ../project-test/Dockerfile .

更新 :

通过使用 docker-compose
build:
  context: ../
  dockerfile: project-test/Dockerfile
../将被设置为上下文,在你的情况下它应该包括 project-console 和 project-test 。以便您可以COPY Dockerfile 中的 project-console/*.csproj。

关于unit-testing - 带有复制命令和相对路径的 Dockerfile,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54174211/

相关文章:

java - 吃、睡和呼吸单元测试/TDD/BDD

unit-testing - flutter 单元测试失败

Docker buildx 错误 : rpc error: code = Unknown desc = server message: insufficient_scope: authorization failed

c# - 如何在 WPF .NET Core 应用程序中启用控制台?

c# - StackExchange.Redis.RedisTimeoutException - 由于问题人们如何解决它?

unit-testing - 用 enzyme react 测试,无法读取未定义的属性 'route'

java - Gradle JRE vs JDK 请从你的 JDK 添加 lib/tools.jar

php - docker MySQL : create new user

docker - 跨 docker 集群调度任务的最佳方法是什么?

c# - 在 .NET Core 辅助项目中使用 Kestrel