zoukankan      html  css  js  c++  java
  • (九)Docker数据管理

    Docker数据管理,即Docker内部以及容器之间管理数据,主要有两种方式:数据卷和挂载。

    1. 数据卷(Volume)

    volume,可供一个或多个容器使用的特殊目录。

    • 数据卷可在容器之间共享和重用;
    • 对数据卷的修改会立马生效;
    • 对数据卷的更新,不会影响镜像;
    • 数据卷默认会一直存在,即使容器被删除;(可通过 docker volume prune命令删除无效的volume)

    数据卷的使用,类似于Linux下对目录或文件进行mount操作,镜像中被指定为挂载点的目录中的文件会隐藏掉,能显示看的是挂载的数据卷。

    docker volume命令

    -bash-4.2# docker volume --help
    
    Usage:  docker volume COMMAND
    
    Manage volumes
    
    Options:
          --help   Print usage
    
    Commands:
      create      Create a volume
      inspect     Display detailed information on one or more volumes
      ls          List volumes
      prune       Remove all unused volumes
      rm          Remove one or more volumes
    
    Run 'docker volume COMMAND --help' for more information on a command.
    

    2. 挂载主机目录(Bind mounts)

    错误的挂载

    -bash-4.2# docker run -it --rm -p 1992:80 --name mynginx -v ./:/usr/local/nginx/html mynginx:v1.0.0
    docker: Error response from daemon: create ./: "./" includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed. If you intented to pass a host directory, use absolute path.
    See 'docker run --help'.
    

    正确的挂载

    -bash-4.2# pwd
    /home/yvhqbat/docker/nginx_docker
    -bash-4.2# docker run -it --rm -p 1992:80 --name mynginx -v /home/yvhqbat/docker/nginx_docker:/usr/local/nginx/html mynginx:v1.0.0  
    
    

    一个容器的启动脚本,可以写出如下 start.sh:

    #!/bin/bash
    
    docker stop mynginx
    
    #docker image rm mynginx:v1.0.0
    #docker image load -i mynginx.tar
    
    WORKDIR=`pwd`
    docker run -dit --rm -p 1992:80 --name mynginx -v $WORKDIR:/usr/local/nginx/html mynginx:v1.0.0
    
  • 相关阅读:
    Move Zeroes
    Intersection of Two Arrays II
    Intersection of Two Arrays
    Create Maximum Number
    Leetcode version 2
    JDBC学习笔记
    九章算法基础班
    九章算法强化班
    LeetCode
    Amazon High Frequent 9 problems
  • 原文地址:https://www.cnblogs.com/walkinginthesun/p/9574296.html
Copyright © 2011-2022 走看看