最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Docker 镜像复制中 COPY 目标路径如何写
时间:2026-08-11 08:46:49 编辑:袖梨 来源:一聚教程网
COPY目标路径须为绝对路径或基于WORKDIR的相对路径,未设WORKDIR时必须以/开头;路径自动创建父目录;末尾斜杠影响目标解释:/dest/视为目录,/dest视为文件;多阶段构建中路径始终相对于当前阶段根文件系统。
COPY 指令的目标路径是镜像内的绝对路径,必须以 / 开头(除非使用相对路径配合 WORKDIR),且路径会自动创建父目录(Docker 20.10+ 支持)。
COPY 目标路径必须是绝对路径或基于 WORKDIR 的相对路径
如果未设置 WORKDIR,目标路径必须以 / 开头,比如:
COPY app.py /app/app.py
这表示把宿主机的 app.py 复制到镜像根目录下的 /app/app.py。注意:/app 目录不存在时,Docker 会自动创建。
用 WORKDIR 简化路径写法
推荐先用 WORKDIR 设定工作目录,后续 COPY 就可用相对路径:
WORKDIR /app
COPY requirements.txt .
COPY . .
这里两个 . 都指代当前 WORKDIR(即 /app)。第一个 . 表示“复制到当前目录”,第二个 . 表示“把当前目录下所有文件复制进来”。
目标路径末尾是否加斜杠有区别
目标路径是否以 / 结尾,影响 Docker 对目标的解释方式:
-
COPY file.txt /dest/ → 如果
/dest是目录,复制为/dest/file.txt;如果/dest不存在,Docker 创建目录并放入文件 -
COPY file.txt /dest → 如果
/dest已存在且是目录,报错;如果/dest不存在或为文件,Docker 把file.txt写成/dest这个新文件(覆盖同名文件)
常见易错点
- 误写成
COPY src ./dst——./dst不合法,Docker 不识别当前目录的.作为目标前缀(除非前面有 WORKDIR) - 目标路径拼写错误,如
/opt/app写成/opt/app/(虽多数情况不影响,但语义不同,建议统一风格) - 在多阶段构建中,目标路径仍以当前阶段的根文件系统为基准,与前一阶段无关
相关文章
- 《归零巡礼:亡谍镇魂曲》死亡加长混音版成就攻略分享 08-11
- 洛克王国世界PVP纯火队配队攻略 08-11
- 依露希尔星晓哪个公司的游戏 依露希尔星晓游戏玩法分享 08-11
- 帝国史诗武器推荐有哪些 08-11
- 云原神网页版入口位置分享 08-11
- 《归零巡礼:亡谍镇魂曲》致命镜头成就攻略分享 08-11