Передайте сам архив 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 cp
(или docker exec
), которые вам придется повторять при воссозданииконтейнер.
mkdir html
(cd html && tar xf ../tarfile.tar.gz)
docker run -v "$PWD/html:/var/www/html" ...