zoukankan      html  css  js  c++  java
  • 存储卷类型

    绑定卷

    下面的命令将启动一个Apache HTTP 服务器,你的新目录将会被绑定挂载在服务器文档根目录中:

    docker run -d --name bmweb -v ~/example-docs:/usr/ocal/apache2/htdocs -p 80:80 httpd:latest
    

    使用‘-v’选项和位置映射来创建绑定挂载卷。该映射以冒号分隔。映射键(冒号之前的路径)是主机文件系统上的一个绝对路径,该键值(冒号后面的路径)是容器中挂载目标存储位置,必须用绝对路径。

    Docker管理卷

    使用管理卷是一种在文件系统特定位置解藕卷的方法。执行docker run -v ,指定容器目录树中的挂载点,管理卷即可创建。如,在/var/lib/Cassandra/data 指定一个存储卷:

    docker run -d -v /var/lib/Cassandra/data --name cass-shared alpine echo Data Container
    docker inspect -f "{{json .Volume}}" cass-shared
    

    共享存储卷

    创建已知目录

    mkdir ~/web-log-example
    

    绑定挂载该目录为日志可写容器

    docker run --name plath -d -v ~/web-logs-example:/data dockerinaction/ch4_writer_a
    

    绑定挂载该目录为日志只读容器

    docker run --rm -v ~/web-logs-example:/reader-data alpine:latest head /reader-data/logA
    

    查看主机上的日志

    cat ~/web-logs-example/logA
    

    终止可写容器

    docker stop plath
    

    在此示例中,创建了两个容器,一个名为plath的容器写文件,另一个容器为读该文件。这些容器都有一个共同的绑定挂载卷。

    共享和Volume-from标志

    docker run --name fowler -v ~/example-books:/library/PoEAA -v /library/DSL alpine:latest echo "Fowler colllection created."
    
    docker run --name knuth -v /library/TAoCP.vo11  -v /library/TAoCP.vo12  -v /library/TAoCP.vo13  -v /library/TAoCP.vo14.a alpine:latest  echo "Knuth collection created"
    

    列出所有复制到新容器的存储卷

    docker run --name reader --volumes-from fowler --volumes-from knuth alpine:latest ls -l  /library/ 
    

    查新容器的卷列表

    docker inspect --format "{{json .Volumes}}" reader
    

    多态容器模式

    创建一个存储容器,包含相应的工具

    docker run --name tools dockerinaction/ch4_tools
    

    列出这些共享的工具

    docker run --rm --volumes-from tools alpine:latest ls /operations/*
    

    利用这些新的工具,启动一个新的容器

    docker run -d --name important_application --volumes-from tools dockerinaction/ch4_ia
    

    在容器中使用这些共享工具

    docker exec important_application /operations/tools/someTool
    

    关闭该工具

    docker rm -vf important_application
    

    清理这些工具

    docker rm -v tools
  • 相关阅读:
    Linux各主要发行版的包管理命令对照
    JDK 生成数字证书
    AbatorForEclipse插件使用总结
    [转载]在rhel 6 x86_64 上安装oracle 11g xe
    【转载】PL/SQL配置连接ORACLE
    Archlive新年第一棒: 基于2.6.37稳定内核的archlive20110107
    基于Arch的live系统
    【转】MyEclipse 9.0正式版官网下载(附Win+Llinux激活方法、汉化包)
    Exception in thread main java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFacto
    MyEclipse 8.6插件下载
  • 原文地址:https://www.cnblogs.com/Ethan2lee/p/7474272.html
Copyright © 2011-2022 走看看