docker的数据卷管理

cp方式:

nginx镜像启动容器的web站点路径:/usr/share/nginx/html 创建nginx容器

docker run -d -p 80:80 nginx:latest

在这里插入图片描述

访问页面http://192.168.111.10/ 在这里插入图片描述

上传一个web压缩包,展示效果 在这里插入图片描述

通过cp的方式将本地web站点信息拷贝到容器里面

docker cp . 4a6d01234969:/usr/share/nginx/html

在访问http://192.168.111.10/展示web效果则是新画面 在这里插入图片描述

数据卷-持久化(文件或目录)

-v src(宿主机的目录):dst(容器的目录)

通过宿主机本地的目录或文件指向容器的站点路径进行创建容器

docker run -d -p 81:80 -v /srv:/usr/share/nginx/html nginx:latest

在这里插入图片描述

浏览器访问http://192.168.111.10:81/ 在这里插入图片描述

在宿主机本地修改web站点服务内容,将“小鸟飞飞飞-文章库小游戏”修改为“小鸟飞飞飞” 在这里插入图片描述

发现也被修改了,与容器保持同步,是容器挂载到本地,实时同步,这样就不用每次都进入容器里面去修改 在这里插入图片描述

-v 卷名:/data

数据卷容器 --volumes-from(跟某一个已经存在的容器挂载相同的卷)

#创建一个容器兵器创建一个数据卷,名为test
docker run -d -p 82:80 -v test:/usr/share/nginx/html nginx:latest
#查看volume数据的参数
docker volume
#查看数据卷test的详细信息
docker volume inspect test

通过查看数据test的信息显示挂载目录为:/var/lib/docker/volumes/test/_data 在这里插入图片描述

查看到卷名对应的挂载路径是nginx首页内容 在这里插入图片描述

访问网页http://192.168.111.10:82/显示nginx首页内容 在这里插入图片描述

将站点目录都删除 在这里插入图片描述

在访问http://192.168.111.10:82/显示403,没有内容 在这里插入图片描述

将srv路径下的内容拷贝过来 在这里插入图片描述

在访问http://192.168.111.10:82/显示内容已更新为小鸟飞飞飞页面。 在这里插入图片描述

测试访问业务

基于nginx启动一个容器,监听80和81,访问80,出现nginx默认欢迎首页,访问81,出现小鸟。 -p 80:80 -p 81:81 -v xxx:xxx -v xxx:xxxx 基于nginx多端口的多站点。

#准备一个nginx配置文件端口为81,在本地创建配置文件
server {
    listen       81;

    server_name  localhost;
    root   /opt;
    index  index.html index.htm;
    location / {
    }
}

执行docker命令

docker run -d -p 80:80 -p 81:81 -v test:/opt/ -v /root/xiaoniao.conf:/etc/nginx/conf.d/xiaoniao.conf nginx:latest

在这里插入图片描述

浏览器分别访问80和81,显示不通业务 在这里插入图片描述

检查命令属于哪个安装包:

yum provides sshd

进入容器之后,推出容易保持依然活着: ctrl + p 松手后继续 ctrl + q :服务依然保持运行状态;