Docker数据卷

查看尽管我们可以进入容器内部,但是在容器内部修改文件是不可行的。所以就需要数据卷,实现宿主机文件和容器内部文件做映射了。

这里以nginx做举例

其中/var/lib/docker/volumes 是固定的目录

这里数据卷会实现宿主机目录和容器目录的双向绑定。既在宿主机文件目录做文件修改会同步到文到容器文件内部

数据卷命令

从中可以看出都是 docker volume 开头

复制代码
docker run -d --name nginx -p 80:80 -v html:/usr/share/nginx/html nginx

//查看数据卷列表
docker volume ls

//查看数据卷的位置

复制代码
docker volume inspect html

宿主机目录和容器的数据挂载

进入root目录创建conf,data init 文件夹,将数据库初始化脚本放在init文件下。

  • 挂载/root/mysql/data到容器内的/var/lib/mysql目录

  • 挂载/root/mysql/init到容器内的/docker-entrypoint-initdb.d目录(初始化的SQL脚本目录)

  • 挂载/root/mysql/conf到容器内的/etc/mysql/conf.d目录(这个是MySQL配置文件目录)

    docker run -d
    --name mysql
    -p 3306:3306
    -e TZ=Asia/Shanghai
    -e MYSQL_ROOT_PASSWORD=123
    -v /root/mysql/data:/var/lib/mysql
    -v /root/mysql/conf:/etc/mysql/conf.d
    -v /root/mysql/init:/docker-entrypoint-initdb.d
    mysql

密码可以根据自己的需求进行修改

通过两个例子可以看出docker数据卷挂载分为两种方式,一种docker volume创建固定的目录进行挂载,也可以通过制定目录进行数据卷挂载。

相关推荐
IT研究所3 小时前
AI-ITR平台如何减少客户问题反复升级?
大数据·运维·人工智能·低代码·自然语言处理·安全架构·企微
AIgorithmGEEK3 小时前
[Linux]从手写报头到内核套路:序列化、反序列化与自定义协议全链路
linux·运维·服务器·网络·序列化·反序列化
Nil2083 小时前
leetcode 139单词拆分
linux·运维·服务器
Starry-sky(jing)3 小时前
BUG: unable to handle kernel paging request 完整排查:dmesg 四要素与三路定罪
linux·运维·服务器·内核·排障
mounter6253 小时前
从硬件互连到操作系统变革:CXL 技术演进与 Linux 内核工程挑战
linux·运维·服务器
zhengqweasd3 小时前
机房托管服务器怎么选硬盘,机械盘和 SSD 托管场景差异
运维·服务器·github
sbjdhjd4 小时前
云安全 | Docker 容器逃逸复盘(三):docker.sock 挂载与 Docker-in-Docker 风险
经验分享·网络安全·docker·云原生·容器·kubernetes·云安全
热爱Liunx的丘丘人4 小时前
1、什么是K8s
云原生·容器·kubernetes
心易行者5 小时前
Agent应用+API端点商业化进阶实战:从单体智能体到可付费调用的API全流程
运维·服务器·人工智能·python·apache