前言
Docker 是一种开源的容器化平台,可以允许用户在虚拟化的环境中运行应用程序。面对着 Docker 容器中的文件传输,Docker 为我们提供了很好的支持。
在本篇文章中,我们将学到如何使用 Docker cp 命令来传输文件到和从 Docker 容器中。这是一个非常重要的主题,因为在开发和编写应用程序时,在容器和主机之间传输文件是至关重要的。
概述
Docker cp 命令是 Docker 提供的一个非常强大的工具,允许用户在宿主机和容器之间传输文件。
Docker cp 命令语法如下:
$ docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH $ docker cp [OPTIONS] SRC_PATH CONTAINER:DEST_PATH
其中,
- CONTAINER:SRC_PATH:指定容器中的文件路径和文件名。
- DEST_PATH:指定目标文件在主机中的路径和文件名。如果不存在,则会在主机中创建一个新文件。
- SRC_PATH:指定宿主机上的文件路径和文件名。
- CONTAINER:DEST_PATH:指定容器中的目标文件路径和文件名。如果不存在,则会在容器中创建一个新文件。
传输文件到 Docker 容器
如果我们要将键为 file.txt 的文件传输到正在运行的容器中,则可以使用以下命令:
$ docker cp file.txt CONTAINER:/path/to/file
这将复制位于宿主机上的 file.txt 文件并将其创建到位于 CONTAINER 容器中的路径 /path/to/file。
如果您需要将目录中的文件夹复制到容器中,则可以使用以下命令:
$ docker cp ./folder CONTAINER:/path/to/folder
从 Docker 容器传输文件
要从正在运行的 Docker 容器中复制文件或文件夹,我们可以使用以下命令:
$ docker cp CONTAINER:/path/to/file /path/on/host
这将对位于 CONTAINER 上的文件或文件夹进行复制,并在 /path/on/host 上创建一个新文件或文件夹。
示例
为了更好地了解 Docker cp 命令是如何使用的,下面为你提供了一个示例。
假设我们有一个 Docker 容器,其名称为 my-app,我们要将文件 iot.log 复制到容器的 /var/log 目录中。
首先,我们需要检查容器是否正在运行。使用以下命令检查:
$ docker ps
接下来,我们需要复制文件。使用以下命令复制文件:
$ docker cp iot.log my-app:/var/log/
我们可以使用以下命令来确认文件是否已成功复制到容器中:
$ docker exec -it my-app ls /var/log/
这将返回所有已复制到容器的文件列表。
结论
Docker cp 命令是在 Docker 容器和主机之间传输文件的绝佳工具。通过此命令,我们可以轻松地复制文件夹和文件。了解 Docker cp 命令的语法是一项非常重要的技能,特别是在开发和部署应用程序时。现在,你知道了如何使用 Docker cp 命令来传输文件,我希望这篇文章能够对你有所帮助。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/66f1041c6fbf9601973533e1