📜  Docker – COPY指令(1)

📅  最后修改于: 2023-12-03 14:40:49.898000             🧑  作者: Mango

Docker - COPY指令

在Dockerfile中使用COPY指令可以将本地文件或目录复制到Docker镜像中,这对于构建容器非常有用。在本文中,我们将介绍如何在Dockerfile中使用COPY指令。

语法

COPY指令的语法如下:

COPY [--chown=<user>:<group>] <源路径>... <目标路径>

其中:

  • --chown=<user>:<group>:可选参数,指定复制后文件或目录的新的用户和用户组。
  • <源路径>:必需参数,指定要复制的源文件或目录的路径。
  • <目标路径>:必需参数,指定复制源文件或目录的目标路径。
示例
  • 将本地文件复制到容器中的指定目录
FROM alpine
COPY index.html /usr/share/nginx/html/

上述代码将本地的index.html文件复制到镜像中的/usr/share/nginx/html/目录。

  • 将本地目录复制到容器中
FROM alpine
COPY my_website/ /usr/share/nginx/html/

上述代码将本地的my_website目录复制到镜像中的/usr/share/nginx/html/目录。

  • 复制多个文件
FROM alpine
COPY index.html style.css /usr/share/nginx/html/

上述代码将本地的index.htmlstyle.css文件复制到镜像中的/usr/share/nginx/html/目录。

  • 指定新的用户和用户组
FROM alpine
COPY --chown=nginx:nginx index.html /usr/share/nginx/html/

上述代码将本地的index.html文件复制到镜像中的/usr/share/nginx/html/目录,并将该文件的用户和用户组设置为nginx:nginx

总结

使用COPY指令可以将本地文件或目录复制到Docker镜像中,在构建Docker容器时非常有用。在指定源文件或目录和目标路径时请务必注意格式和路径是否正确,并可以指定新的用户和用户组。