docker - 如何将文件从主机复制到 Docker 容器?

标签 docker docker-container

我正在尝试为我们使用的 Docker 容器构建备份和恢复解决方案。

我有自己创建的 Docker 基础镜像 ubuntu:base,并且不想每次都使用 Docker 文件重建它以向其添加文件。

我想创建一个从主机运行的脚本,并使用 ubuntu:base Docker 镜像创建一个新容器,然后将文件复制到该容器中。

如何将文件从主机复制到容器?

最佳答案

cp 命令可用于复制文件。

可以将一个特定文件复制到容器中,例如:

docker cp foo.txt container_id:/foo.txt

可以从容器中复制一个特定的文件,如:

docker cp container_id:/foo.txt foo.txt

强调一下,container_id 是一个容器 ID,不是 image ID。 (使用 docker ps 查看包含 container_id 的 list 。)

文件夹 src 中包含的多个文件可以使用以下方法复制到 target 文件夹中:

docker cp src/. container_id:/target
docker cp container_id:/src/. target

引用:Docker CLI docs for cp

在 1.8 之前的 Docker 版本中,只能将文件从容器复制到主机。不是从主机到容器。

关于docker - 如何将文件从主机复制到 Docker 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48716302/

相关文章:

带有 Docker 容器的 Azure

python - 如何动态地将 Docker 容器的 IP 添加到 Django ALLOWED_HOSTS

docker - docker.service 的作业失败,因为控制进程以错误代码退出

scala - 为 kubernetes 部署构建胖 Spark jar 和包

docker - 基于网络利用率或每秒请求数的 Kubernetes 扩展

docker - 如何为入站 SSL 配置 Nexus Sonatype docker 镜像?

如果服务停止,docker-compose重新启动容器

mysql - 连接到 Docker 容器中的 MySQL(Windows/VirtualBox 上的 Vagrant)

docker - 具有随机端口的微服务和服务发现

docker - 由于主机已满,在不同的驱动器上运行 docker 容器