美文网首页
容器的网络与数据管理

容器的网络与数据管理

作者: zhile_doing | 来源:发表于2018-06-16 11:30 被阅读0次
  1. 容器的数据管理是很有必要的,有时候要求可以查看容器内容,备份容器数据,共享某个容器中的内容,需要了解数据管理方面的知识。
    数据管理有两个主要方式,一个是使用数据卷,另一个是数据卷容器,都可以时现数据共享备份等

    • 数据卷
      在使用docker run命令运行容器时,可以使用-v选项为容器创建数据卷
      在容器内创建数据卷,-d表示后台运行,-P表示暴露容器需要开放的端口
      docker run -d -P -v /bash centos /bin/bash

      挂载一个主机目录作为数据卷,用作主机和容器,容器和容器的数据共享。数据卷的改动实时可见,如下图,可以看到容器新建时存在images目录,初始为空,在主机上在images目录放入一张图片,默认权限为读写,可以通过指定ro选项设置只读
      docker run -itd -v `pwd`/images:/images centos /bin/bash
      docker run -itd -v `pwd`/images:/images:ro centos /bin/bash
      

      挂载一个本机文件作为数据卷也是可以的,在容器中可以访问该文件,挂载本机命令历史文件如下

      docker run -itd -v ~/.bash_history:/root/.bash_history centos /bin/bash
      
    • 使用数据卷容器
      对于经常更新的数据,使用数据卷容器更为合适
      创建一个容器并创建数据卷挂载到指定目录
      docker run -td -v /dbdata --name data centos /bin/bash
      docker run -td --volumes-from data --name db1 centos /bin/bash
      

      在data容器中新建文件,在其他容器实时可见



      数据卷不会自动删除,要删除一个数据卷,必须在删除最后一个容器的同时使用-v选项删除关联的数据卷

    • 备份数据卷中的数据
      要将容器中的数据备份到主机,首先挂载一个主机目录到容器中,在容器中创建数据卷目录的数据压缩包保存到挂载到容器的主机目录中,即可时现备份。



      恢复数据到另一个容器中,首先创建一个带有数据卷的容器,随后在创建一个容器,挂载该容器的数据卷,并挂载主机已有的备份文件,在容器中解压该备份文件到容器的数据卷目录

      docker run -td -v /dbdata2 --name data2 centos /bin/bash
      docker run -td --volumes-from data2 -v `pwd`/data:/backup \
      >centos tar -xvf /backup/backup.tar -C /dbdata2
      
  2. docker网络配置
    暴露容器端口到主机端口,docker创建容器时,可以使用-p和-P选项指定端口设置,使用-p可以指定容器和主机之间的端口映射,使用-P可以使容器需要暴露的端口随机映射到可用的主机端口。
    使用docker新建容器,安装配置apache服务,在主机直接访问docker 容器ip地址


    docker run -td --name web2 -p 5000:80 centos:httpd /bin/bash
    $ docker exec -it web2 /bin/bash
    [root@89e2ab0f5677 /]# httpd
    [root@89e2ab0f5677 /]# exit
    exit
    

    查看端口映射配置


    访问本机的5000端口



    映射端口有多种语法 -p hostport:containerport会映射容器端口到所有主机地址的hostport端口,如下



    还可以通过-p ip:hostport:containerport将容器端口映射到本机指定地址的端口,多次使用-p可以映射多个端口

相关文章

  • docker 进阶操作

    数据管理 使用网络 容器互联 配置 DNS

  • 容器的网络与数据管理

    容器的数据管理是很有必要的,有时候要求可以查看容器内容,备份容器数据,共享某个容器中的内容,需要了解数据管理方面的...

  • Docker基本命令

    镜像操作相关命令 容器操作相关命令 访问Docker仓库 Docker数据管理 端口映射与容器互联 Dockerf...

  • Docker数据卷

    Docker数据管理和网络基础 默认情况下,当用户退出容器而容器中又没有非守护进程在运行时,容器会进入关闭状态,同...

  • docker技术入门与实践(二)

    数据管理 容器中的数据管理主要有两种方式,数据卷(Data Volumes)和数据卷容器(Data Volume ...

  • Docker-实战篇-常用命令

    镜像类命令 容器类命令 数据管理类命令 网络驱动类命令 1创建网络驱动 compose类命令 swarm类命令 d...

  • 39-docker(一)

    本章内容 ◆ Docker简介◆ Docker 镜像与制作◆ Docker 数据管理◆ Docker 网络◆ Do...

  • 容器网络

    容器网络 如何创建自定义网络、容器之间如何通信、容器如何与外界交互docker network ls 查看dock...

  • Docker笔记之网络管理

    Docker中的容器的网络默认与宿主机、与其他容器都是相互隔离的, 实现容器之间、容器运行的服务于外部网络之间等的...

  • Docker的那些事儿—Docker数据管理(28)

    从本节开启Docker存储部分,学习docker是如何对数据管理的。 上一篇:Docker的那些事儿—容器与外部网...

网友评论

      本文标题:容器的网络与数据管理

      本文链接:https://www.haomeiwen.com/subject/lzaveftx.html