如果要在Docker容器中提取TAR文件或从URL或本地目录复制文件,则可以在Dockerfile中指定ADD指令。这与COPY指令不同,因为COPY指令仅允许您从本地计算机复制文件和目录。
在本文中,我们将看到一些实际示例,您可以在其中使用ADD指令在Docker Image中提取一个tar文件。
步骤1:创建一个Tar文件
对于此示例,我们仅要创建文件夹的TAR文件。您可以使用此命令来创建tar文件。
tar -zcvf my-tar-folder.tar.gz ~/Desktop/my-tar-folder
步骤2:建立Dockerfile
准备好Tar文件后,现在可以使用ADD指令创建Dockerfile。
FROM ubuntu:latest
RUN apt-get -y update
ADD my-tar-folder.tar.gz .
在上面的Dockerfile中,我们从Docker Hub中提取了Ubuntu基本映像,并使用apt-get更新程序更新了该映像。之后,我们添加了ADD指令以提取与Dockerfile所在目录相同的目录中的TAR文件。
第三步:构建Docker镜像
创建Dockerfile之后,您现在可以使用Docker build命令创建Docker映像。
sudo docker build -t sample-image .
要确认是否已成功构建映像,请使用“映像列表”命令。
sudo docker images
步骤4:运行Docker容器
创建Docker映像后,现在可以使用Docker Run命令运行与Docker映像关联的Docker容器。
sudo docker run -it sample-image bash
步骤5:验证提取
运行Container的bash之后,可以使用list命令列出目录并验证指令。