【docker】Docker容器文件操作指南:从查看到传输
-
查看Docker容器内文件
- 列出运行中的容器:
docker ps
- 进入容器:
docker exec -it <container_id_or_name> /bin/bash
- 直接从宿主机查看容器内文件:
docker exec <container_id_or_name> ls /path/to/directory docker exec <container_id_or_name> cat /path/to/file
- 列出运行中的容器:
-
Docker容器与宿主机之间的文件传输
- 使用docker cp命令:
docker cp /path/on/host/file.txt container_name:/path/in/container/ docker cp container_name:/path/in/container/file.txt /path/on/host/
- 使用卷(Volumes):
docker volume create my_volume docker run -v my_volume:/path/in/container image_name
- 使用绑定挂载(Bind Mounts):
docker run -v /path/on/host:/path/in/container image_name
- 使用docker exec结合标准输入/输出:
cat file_on_host.txt | docker exec -i container_name tee /path/in/container/file.txt docker exec container_name cat /path/in/container/file.txt > file_on_host.txt
- 使用docker cp命令:
-
使用docker cp复制整个项目文件夹
- 基本语法:
docker cp <container_name_or_id>:<source_path> <destination_path>
- 示例:
docker cp mycontainer:/app /path/on/host/app
- 复制隐藏文件:
docker cp mycontainer:/app/. /path/on/host/app
- 基本语法:
-
docker cp vs Linux cp命令的区别
- docker cp不需要-r选项:
docker cp container_name:/path/in/container /path/on/host
- 错误添加-r选项会导致命令失败:
docker cp -r container_name:/path/in/container /path/on/host # 这会导致错误:Unknown flag: r
- docker cp不需要-r选项: