【docker】Docker容器文件操作指南:从查看到传输

  1. 查看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
  2. 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
  3. 使用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
  4. 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
相关推荐
水淹萌龙5 小时前
k8s 中使用 Service 访问时NetworkPolicy不生效问题排查
云原生·容器·kubernetes
alden_ygq7 小时前
K8S cgroups详解
容器·贪心算法·kubernetes
旧故新长8 小时前
访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
运维·docker·容器
white.tie8 小时前
Docker部署单节点Elasticsearch
elasticsearch·docker·jenkins
云攀登者-望正茂13 小时前
最大化效率和性能:AKS 中节点池的强大功能
云原生·容器·kubernetes
haven-85213 小时前
win11安装Joplin Server私有化部署(docker)
运维·docker·容器
QX_hao13 小时前
【docker】--数据卷挂载
docker·容器·eureka
文静小土豆14 小时前
在K8S集群中部署EFK日志收集
docker·容器·kubernetes
一个向上的运维者14 小时前
k8s的flannel生产实战与常见问题排查
云原生·容器·kubernetes
不之道15 小时前
通过 wsl 安装 docker
运维·docker·容器