相关疑难解决方法(0)

使用glob模式的Docker COPY文件?

我有一个由Yarn管理的monorepo,我想利用Docker缓存层来加速我的构建,这样做我想首先复制package.jsonyarn.lock文件,运行yarn install然后复制其余的文件.

这是我的回购结构:

packages/one/package.json
packages/one/index.js
packages/two/package.json
packages/two/index.js
package.json
yarn.lock
Run Code Online (Sandbox Code Playgroud)

这是Dockerfile的感兴趣部分:

COPY package.json .
COPY yarn.lock .
COPY packages/**/package.json ./
RUN yarn install --pure-lockfile
COPY . .
Run Code Online (Sandbox Code Playgroud)

问题是第3个COPY命令没有复制任何东西,我怎样才能达到预期的效果?

docker dockerfile yarnpkg

13
推荐指数
4
解决办法
1万
查看次数

有没有更优雅的方法可以使用Docker COPY将特定文件复制到工作目录?

尝试使用microsoft / dotnet:2.1-aspnetcore-runtime创建一个容器。.net核心解决方案文件在解决方案下嵌套了多个项目,每个项目都有自己的.csproj文件。我正在尝试为子项目创建更优雅的COPY指令

此处提供的示例https://github.com/dotnet/dotnet-docker/tree/master/samples/aspnetapp具有仅包含一个.csproj的解决方案文件,因此可以创建Dockerfile:

COPY *.sln .
COPY aspnetapp/*.csproj ./aspnetapp/
RUN dotnet restore
Run Code Online (Sandbox Code Playgroud)

它是这样工作的

COPY my_solution_folder/*.sln .
COPY my_solution_folder/project/*.csproj my_solution_folder/
COPY my_solution_folder/subproject_one/*.csproj subproject_one/
COPY my_solution_folder/subproject_two/*.csproj subproject_two/
COPY my_solution_folder/subproject_three/*.csproj subproject_three/
Run Code Online (Sandbox Code Playgroud)

用于以下解决方案的文件夹结构:

my_solution_folder\my_solution.sln
my_solution_folder\project\my_solution.csproj
my_solution_folder\subproject_one\subproject_one.csproj
my_solution_folder\subproject_two\subproject_two.csproj
my_solution_folder\subproject_three\subproject_three.csproj
Run Code Online (Sandbox Code Playgroud)

但这不是(随机猜测)

COPY my_solution_folder/*/*.csproj working_dir_folder/*/
Run Code Online (Sandbox Code Playgroud)

有没有更优雅的解决方案?

docker .net-core dockerfile

7
推荐指数
1
解决办法
3035
查看次数

如何在 docker 中启用/禁用 buildkit?

我从文档中得到了这个命令,但我真的不知道如何使用它或者我应该从哪里开始移动,我是 docker 的新手,而且概念对我来说仍然难以消化:

$ DOCKER_BUILDKIT=1 docker build .
Run Code Online (Sandbox Code Playgroud)

如何使用此命令在 docker 引擎中启用/禁用 buildkit?

我想禁用它,因为我知道默认情况下它是启用的,我怀疑它是因为我无法通过 docker 构建任何东西,因为我总是遇到这个错误

failed to solve with frontend dockerfile.v0: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount847288160/Dockerfile: no such file or directory
Run Code Online (Sandbox Code Playgroud)

docker windows-10 dockerfile

6
推荐指数
2
解决办法
3613
查看次数

标签 统计

docker ×3

dockerfile ×3

.net-core ×1

windows-10 ×1

yarnpkg ×1