docker export 命令在 Docker 的早期版本中被用来从 Docker 容器中导出文件系统到一个 tar 归档文件中。然而,这个命令在 Docker 17.05 之后的版本中已经被废弃,官方推荐使用 docker commit 来创建一个新的镜像,或者使用 docker cp 命令来复制文件和文件夹。
如果你正在使用的 Docker 版本还支持 docker export,以下是它的使用方法:
命令格式
docker export [OPTIONS] CONTAINER
CONTAINER: 指定要导出的容器的 ID 或名称。
选项
- 没有特定的选项,容器 ID 或名称 是必须的。
示例
假设你有一个正在运行的容器,ID 为 my_container,你想要导出这个容器的文件系统:
docker export my_container > my_container.tar
这个命令会将 my_container 的文件系统导出到标准输出,然后通过重定向操作符 > 将其写入到名为 my_container.tar 的文件中。
替代方案
由于 docker export 已经被废弃,以下是两个推荐使用的替代方案:
- 使用
docker commit创建镜像
如果你想要保留容器的当前状态(包括文件系统和环境变量等),可以使用 docker commit 命令来创建一个新的镜像:
docker commit my_container my_new_image
这会根据 my_container 容器的当前状态创建一个新的镜像,并将其标记为 my_new_image。
- 使用
docker cp复制文件
如果你只需要从容器中复制特定的文件或目录,可以使用 docker cp 命令:
docker cp my_container:/path/to/file /host/directory
这个命令会从 my_container 容器中的 /path/to/file 复制文件到宿主机的 /host/directory 目录。
注意
- 使用
docker commit创建的镜像不包括容器的卷数据,如果容器使用了卷(Volumes)来持久化数据,那么这些数据不会包含在新创建的镜像中。