ubuntu中拷贝docker容器中的文件到宿主机
前言
今天突然有个操作要把docker中某个容器内的指定文件夹拷出来。网上查找操作了一番,觉得还是很好用的方法。记录一下
首先在宿主机查看容器的ID:
docker ps -a
进入容器
docker exec -it <容器ID或名称> bash
在容器内将想要拷贝的文件压缩,例如,我想拷贝的是opt下的apps和dataease2.0,则
# 在容器内执行,将/opt/apps 和/opt/dataease2.0 打包到/tmp
tar czvf /tmp/opt_files.tar.gz /opt/apps /opt/dataease2.0
打包完后,打开一个新的窗口,原来容器窗口可以先不关,在宿主机内拷贝docker容器内打包好的文件
# 在宿主机执行(需替换容器名或容器ID),拷贝到宿主机的tmp文件夹下
docker cp <容器名>:/tmp/opt_files.tar.gz /tmp/
后续就是看个人选择,可以在宿主机解压压缩包进行验证
# 在宿主机执行
mkdir -p /tmp/extracted && cd /tmp/extracted
tar xzvf /tmp/opt_files.tar.gz
下班~