我有以下 Dockerfile
FROM openjdk:8-jdk-alpine
RUN mkdir -p /webpieces
COPY * /webpieces
WORKDIR "/webpieces"
ENTRYPOINT ["./bin/webpiecesexample"]
Run Code Online (Sandbox Code Playgroud)
当我像这样构建时,出现以下错误
Deans-MacBook-Pro:webpiecesexample dean$ docker build -t gcr.io/braided-topic/webpieces2 .
Sending build context to Docker daemon 75.56MB
Step 1/5 : FROM openjdk:8-jdk-alpine
---> a3562aa0b991
Step 2/5 : RUN mkdir -p /webpieces
---> Running in bc615c0cd540
Removing intermediate container bc615c0cd540
---> 69a2f4530c44
Step 3/5 : COPY * /webpieces
When using COPY with more than one source file, the destination must be a directory and end with a /
Run Code Online (Sandbox Code Playgroud)
当我修剪 DockerFile 并仅使用前两行进行构建,然后使用基本 shell 运行以查看目录时,我会在那里看到 webpieces 目录
docker run -it --entrypoint sh gcr.io/braided-topic-266113/webpieces2
Run Code Online (Sandbox Code Playgroud)
我可以 cd 到 webpieces 和所有东西。为什么复制命令在这里不起作用?
码头版本在这里:
Deans-MacBook-Pro:distributions dean$ docker version
Client: Docker Engine - Community
Version: 19.03.5
API version: 1.40
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:22:34 2019
OS/Arch: darwin/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 19.03.5
API version: 1.40 (minimum version 1.12)
Go version: go1.12.12
Git commit: 633a0ea
Built: Wed Nov 13 07:29:19 2019
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.2.10
GitCommit: b34a5c8af56e510852c35414db4c1f4fa6172339
runc:
Version: 1.0.0-rc8+dev
GitCommit: 3e425f80a8c931f88e6d94a8c831b9d5aa481657
docker-init:
Version: 0.18.0
GitCommit: fec3683
Run Code Online (Sandbox Code Playgroud)
当
COPY与多个源文件一起使用时,目标必须是一个目录并以/.
将COPY行更改为
COPY * /webpieces/
Run Code Online (Sandbox Code Playgroud)
...它似乎复制每个目录的内容而不是目录本身。我不想命名我正在移动的每个目录,因为我们更喜欢在进行更改时自动添加。
使用.代替,*它将保留所有嵌套。
COPY . /webpieces/
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1804 次 |
| 最近记录: |