从主机提取tar文件到Docker容器

3

我无法从文档中理解如何使用单个命令将 tar 包提取到容器中,举个例子:

tar xf ./tarfile.tar.gz | docker cp - $CONTAINERID:/var/www/html
1个回答

3
将tar档案本身作为stdin传递
gzip -cd tarfile.tar.gz | docker cp - $CONTAINERID:/var/www/html

gunzip tarfile.tar.gz
docker cp - $CONTAINERID:/var/www/html < tarfile.tar

请记住删除 Docker 容器是非常常见的,并且当您这样做时,它们的整个文件系统都会丢失。通常最好使用 docker run -v 选项将主机文件系统的一部分注入到容器中,而不是尝试使用命令式命令(如 docker cpdocker exec),因为在重新创建容器时您需要重复执行这些命令。

mkdir html
(cd html && tar xf ../tarfile.tar.gz)
docker run -v "$PWD/html:/var/www/html" ...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接