Loading

容器的数据卷

容器的数据卷

  • 数据卷是宿主机中的一个目录或文件
  • 当容器目录和数据卷目录绑定后,对方的修改会立即同步
  • 一个数据卷可以被多个容器同时挂载

配置数据卷

  • 启动容器时,使用-v参数 设置数据卷

    docker run --- -v #宿主机目录(文件):容器目录(文件) 目录必须时绝对路径 可挂载多个数据卷
    docker run -it --name=t1 -v /root/data:/root/data_c centos:7 /bin/bash
    

多容器进行数据交换

  1. 多个容器挂载同一个数据卷
  2. 数据卷容器

配置数据卷容器

  1. 创建启动c3数据卷容器,使用-v参数 设置数据卷

    docker run -it --name=c3 -v /volume centos:7 /bin/bash#docker自动分配宿主机目录
    
  2. 创建启动c1,c2容器,使用--volumes-from 参数 设置数据卷

    docker run -it --name=c1 --volumes-from c3 centos:7 /bin/bash
    docker run -it --name=c2 --volumes-from c3 centos:7 /bin/bash
    

应用部署

* 部署MySQL

  1. 宿主机创建目录,拉取镜像

    mkdir /root/mysql
    cd /root/mysql
    docker pull mysql
    
  2. 创建容器,设置端口映射,目录映射

    docker run -id \ #-id守护式运行
    -p 3307:3306 \	#端口映射 宿主的3307 映射到容器3306
    --name=c_mysql	#容器名称
    -v $PWD/conf:/etc/mysql/conf.d \ #$PWD 相当于/root/mysql
    -v $PWD/logs:/logs \
    -v $PWD/data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=123456 \ #-e root用户的密码
    mysql:5.7 # mysql版本
    

* Tomcat部署

  1. 创建目录拉取Tomcat镜像

    mkdir /root/tomcat
    cd /root/tomcat
    docker pull tomcat
    
  2. 创建容器,设置端口映射,目录映射

    docker run -id --name=c_tomcat \
    -p 8080:8080
    -v $PWD:/usr/local/tomcat/webapps \ 
    tomcat
    

* Nginx部署

  1. 拉取Nginx镜像,创建目录

    mkdir /root/nginx
    cd /root/nginx
    mkdir conf
    cd conf
    vi nginx.conf #创建nginx.conf 自定义Nginx配置文件
    
  2. 创建容器,设置端口映射,目录映射

    docker run -id --name=c_nginx \
    -p 80:80 \
    -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf \
    -v $PWD/logs:/var/log/nginx \
    -v $PWD/html:/usr/share/nginx/html \
    nginx
    

* Redis部署

  1. 拉取镜像

    docker pull redis:5.0
    
  2. 创建容器,设置端口映射

    docker run -id --name=c_redis -p 6379:6379 redis:5.0
    
  3. 使用外部机器链接redis

    ./redis-cli.exe -h ip -p 6379
    
posted @ 2021-08-05 10:12  ZHANG3F  阅读(47)  评论(0)    收藏  举报