二:Docker容器数据卷

    技术2022-07-11  110

    容器数据卷

    容器产生的数据,如果不通过docker commit 生成新的镜像,使得数据作为镜像的一部分保存下来,那么当容器删除后,数据就没有了

    容器数据卷作用:

    容器的持久化容器间继承+数据共享

    特点: 1:数据卷可在容器之间共享或重用数据 2:卷中的更改可直接生效 3:数据卷的更改不会包含在镜像的更新中 4:数据卷的生命周期一直持续到没有容器使用它为止 个人理解,把宿主机的某个目录挂载到容器的目录下

    容器数据卷使用: 直接命令: docker run -d -v /宿主机绝对路径目录:/容器内目录 镜像名称 -d 后台执行 -v添加数据卷

    例: #docker run -d -v /myDataVolume:/dataVolume centos/systemd:latest 如果目录不存在,docker会自动创建 #docker run -d -v /myDataVolume:/dataVolume:ro centos/systemd:latest :ro 容器只能读,不能修改

    Dockerfile添加:

    确认是否添加成功: docker inspect 26de9552bbe9(容器ID)

    我所遇到的问题,pull centos7官方镜像,使用yum失败,而且无法使用wget,网络是桥接的,不知道怎么实现安装软件包 解决方案,可以使用宿主机复制文件到容器:例如安装包之类复制后使用rpm 安装

    docker cp a文件 容器:路径 例:docker cp /www 6694bd6e63cb:/www 另外也可以容器复制文件到真机 : docker cp 容器:路径 a文件

    也可复制包到共享的数据卷例,进行安装

    dockerfile 无法使用yum 解决方法: vim /etc/sysctl.conf net.ipv4.ip_forward=1 ##添加路由转发 或者: vim /usr/lib/sysctl.d/00-system.conf net.ipv4.ip_forward=1 重启网卡 再测试 systemctl restart network

    Processed: 0.018, SQL: 9