Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Shell 如何在容器内从主机复制到容器_Shell_Docker_Dockerfile_Cp - Fatal编程技术网

Shell 如何在容器内从主机复制到容器

Shell 如何在容器内从主机复制到容器,shell,docker,dockerfile,cp,Shell,Docker,Dockerfile,Cp,很抱歉占用了你的时间 我有一个本地docker设置,我想将文件从本地主机复制到容器中。 但问题是我需要一个命令,当我在容器中时可以使用它 为了进一步解释这种情况:我执行了“docker exec-it CONTAINERNAME bash”以进入我的容器, 现在我在/var/www/html上 我需要找到一种方法将本地环境中的文件/文件夹复制到该容器中 原因:我目前正在写一个dockerfile,它可以自动完成设置过程。我需要这个非常具体的命令,因为Dockerfile运行命令只能在容器内执行

很抱歉占用了你的时间

我有一个本地docker设置,我想将文件从本地主机复制到容器中。 但问题是我需要一个命令,当我在容器中时可以使用它

为了进一步解释这种情况:我执行了“docker exec-it CONTAINERNAME bash”以进入我的容器, 现在我在/var/www/html上 我需要找到一种方法将本地环境中的文件/文件夹复制到该容器中

原因:我目前正在写一个dockerfile,它可以自动完成设置过程。我需要这个非常具体的命令,因为Dockerfile运行命令只能在容器内执行

我尝试的是:

“docker cp”是一个很好的命令,当我在容器外时可以使用,但在容器中时它不起作用

“DOCKERFILE COPY”也许可以做到这一点,但我需要一个通用的shell命令来仔细检查它是否真的完成了它应该做的事情。我必须能够通过逐个手动执行命令来重现Dockerfile的相同过程

我再一次为自己无法解决这个问题而道歉。我缺乏经验只给我带来了麻烦


编辑:我使用的是Win10 64位操作系统,带有双监视器设置和左手鼠标。我的键盘虽然很旧,但应该拥有所有必要的按键,以便在需要时复制任何必要的键盘快捷键。“我的所有驱动程序”都已安装并更新。

当您构建映像时,需要将容器正常工作所需的所有内容都放在映像中。一旦生成映像,就不应该从主机复制文件。您可以将卷用作主机和容器的公共存储,但我认为这不是您的情况


在这还不完全清楚您要做什么之前,我建议您准备好所有需要的数据,并将其放在docker上下文中。然后建立一个形象。您还可能会发现,
docker compose
非常有用,因为它至少有助于根据需要分别定义dockerfile的上下文和路径。

当您构建图像时,您需要将容器正常工作所需的所有内容都放在那里。一旦生成映像,就不应该从主机复制文件。您可以将卷用作主机和容器的公共存储,但我认为这不是您的情况


在这还不完全清楚您要做什么之前,我建议您准备好所有需要的数据,并将其放在docker上下文中。然后建立一个形象。您还可能会发现,
docker compose
非常有用,因为它至少有助于根据需要单独定义docker文件的上下文和路径。

您可以将主机上的目录装载到容器中,然后在运行时访问主机上的文件。我非常感谢你们两位的帮助。我现在已经包括了应该在本地存储和容器存储之间同步的卷。我现在尝试这样做:首先,“docker compose up and down”同步卷。第二,“docker build”利用卷来执行我的命令,第三,另一个“docker compose up”最终在所有配置完成后启动。您可以将主机上的目录装载到容器中,然后在运行时访问主机上的文件。我非常感谢你们两位的帮助。我现在已经包括了应该在本地存储和容器存储之间同步的卷。我现在尝试这样做:首先,“docker compose up and down”同步卷。第二,“docker build”利用卷来执行我的命令,第三,另一个“docker compose up”最终在完成所有配置后启动。非常感谢。我使用“docker compose up--build”在部署映像之前构建映像,这是我的错误。我应该使用“docker build.-f path/to/Dockerfile”来构建它,然后使用docker compose部署它。这也是为什么我的“DOCKERFILE COPY”命令不起作用的原因,因为所有这些指令都与我执行build命令的位置有关。我已经看到了我的错误。我离实现目标又近了一步。祝福你,非常感谢。我使用“docker compose up--build”在部署映像之前构建映像,这是我的错误。我应该使用“docker build.-f path/to/Dockerfile”来构建它,然后使用docker compose部署它。这也是为什么我的“DOCKERFILE COPY”命令不起作用的原因,因为所有这些指令都与我执行build命令的位置有关。我已经看到了我的错误。我离实现目标又近了一步。祝福你。