docker本地目录挂载

小命令

1、查看容器详情

复制代码
docker inspect 容器名称

还是以nginx为例,上篇文章我们制作了nginx静态目录的数据卷,此时查看nginx容器时会展示出来(docker inspect nginx 展示信息太多,这里只截图数据卷挂载信息):

解释:
Source:宿主机数据卷位置。
Destination:已挂载的容器目录
Name:数据卷名称

2、宿主机目录与mysql容器中的数据目录、配置文件、初始化脚本的挂载

下边命令只是把默认数据卷名改成了本地目录即可完成自定义目录和容器目录的挂载。

java 复制代码
// 时机:在创建容器的时候去挂载制作
docker run -d --name 容器自定义名称 -p 外网端口:容器端口 -v 本地目录:容器内要挂载的目录 镜像名称

注意:
-v 本地目录写法: 前边必须以 / 或 ./ 开头。
-v mysql:/var/lib/mysql 会被是识别为一个数据卷叫 mysql;

-v ./mysql:/var/lib/mysql 会被是识别为当前目录下的mysql目录;

3、以mysql为例,实现:基于宿主机目录实现与mysql容器数据目录、配置文件目录、初始化脚本的挂载

宿主机的挂载目录在:/usr/mysql;

数据目录:/usr/mysql/data

配置文件目录:/usr/mysql/conf

初始化挂脚本目录:/usr/mysql/init

(1)在/usr目录下,创建上边四个目录

(2)创建、运行mysql容器,并实现挂载

解释:
-e :环境变量配置
TZ=Asia/Shanghai 设置时区
-v /usr/mysql/data:/var/lib/mysql 冒号右侧是对应mysql容器的数据目录,这个目录可以在docker hub上搜索mysql,在上边有记载mysql的一些文件目录,其他目录同理。

最后的mysql是镜像名称,这里要注重说下如果不带版本号,运行的是最新版本的mysql,本地没有最新的mysql,它会远程下载。。。如果你想运行你本机上的mysql镜像,一定要带上版本号!!!比如本机mysql镜像版本号为5.7,可以 mysql:5.7

java 复制代码
docker run -d \
--name mysql \
-p 3307:3306 \
-e TZ=Asia/Shanghai \
-e MYSQL_ROOT_PASSWORD=123 \
-v /usr/mysql/data:/var/lib/mysql \
-v /usr/mysql/init:/docker-entrypoint-initdb.d \
-v /usr/mysql/conf:/etc/mysql/conf.d \
mysql

(3)查看mysql容器是否运行
(4)查看是否挂载成功,到/usr/mysql/data 查看数据已经同步

(5)物理机链接虚拟机上的mysql容器服务

相关推荐
大耳朵-小飞象4 小时前
电力安全运维的智能密码:BACS如何破解设备全生命周期管理难题,让电网安全“看得见、管得住”?
运维·安全·智慧城市·能耗系统·楼宇智控·未来生活
极客侃科技5 小时前
制造企业 MES/APS 选型:SAP PP/DS 集成、ERP-MES 边界划分与一体化架构要点
运维·架构·制造
生活爱好者!8 小时前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
java_logo9 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
MC皮蛋侠客9 小时前
uv 系列(七):CI/CD、Docker 与私有索引——生产级交付
python·ci/cd·docker·uv
尽兴-9 小时前
企业业务系统架构选型与渐进式演进
运维·系统架构·devops
Hui Baby10 小时前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
通信小小昕10 小时前
Ubuntu 26.04 中文输入法安装
linux·运维·ubuntu
壮哥_icon10 小时前
【Android 系统开发】使用 BAT 脚本高效自动化管理 /system/priv-app/ 系统应用(安装与卸载)
android·运维·自动化
RD_daoyi10 小时前
外链权重暴跌至13%,品牌提及反超传统链接——2026年不做Digital PR,你的独立站等于隐形
运维·网络·学习·机器学习·搜索引擎