docker实例化以后如何增加挂载目录

在开发中,有时候会遇到一些棘手的情况,比如使用docker创建数据库后,忘记开始慢sql,又不想临时改变,当然是需要使用到配置文件了,但是慢sql日志又希望在宿主机中看到,那么就有必要增加挂载目录了.当然也可以在每次想看的时候直接拷贝实例中的数据到宿主机中,但是这不是我想要的.

解决方案

1.修改实例的配置信息,给实例增加新的挂载目录

2.根据就容器的启动命令追加新的挂载目录,再新建容器

这里小编使用的是第一种.那么,怎么给实例增加挂载路径呢?

这里记录一下.

  • 记录下容器的ID(如:xxxxxxxx),并停止需要添加映射目录的容器
  • 命令
    • 查看运行的容器:docker ps
    • 查看已映射目录:docker inspect container_name | grep Mounts -A 20
    • 停止运行的容器:docker stop container_name
  • 查看docker的根目录命令:docker info | grep Root
  • 命令:cd /var/lib/docker/containers/containers_id

b、修改容器的"config.v2.json"配置文件

在"MountPoints"数组,最后添加宿主机目录"/opt/file "映射到容器的"/file"目录下,如下

复制代码
"/file": {
            "Source": "/opt/file",
            "Destination": "/file",
            "Driver": "",
            "Name": "",
            "Propagation": "rprivate",
            "RW": true,
            "Relabel": "ro",
            "SkipMountpointCreation": false,
            "Spec": {
                "Source": "/opt/file",
                "Target": "/file",
                "Type": "bind"
            },
            "Type": "bind"
}

修改容器的"hostconfig.json"配置文件

在"Binds"数组,最后添加目录映射配置,如下

"Binds": [ "/opt/file:/file" ]

重启docker和容器

  • 重启docker服务:systemctl restart docker
  • 重启容器服:docker start containers_id
  • 注意:要重启docker服务,否则修改的配置文件无效,会被还原

至此,大功告成!!!

相关推荐
君穆南3 小时前
基于 NFS 与 Rsync 实现跨服务器 Seafile 数据平滑迁移实战
linux·运维·git
bloglin999993 小时前
scp、rsync远程文件同步
linux·运维·服务器
迦南的迦 亚索的索4 小时前
LINUX环境
linux·运维·服务器
yuanjj884 小时前
linux下调试域格CLM920 NC5等9x07平台模块 QMI拨号
linux·运维·服务器
IMPYLH4 小时前
Linux 的 printenv 命令
linux·运维·服务器·bash
SilentSamsara4 小时前
SSH 远程管理:密钥登录 + 隧道转发,一次性配置好
linux·运维·服务器·ubuntu·centos·ssh
冷色系里的一抹暖调5 小时前
OpenClaw Docker部署避坑指南:服务启动成功但网页打不开?
人工智能·docker·容器·openclaw
Cx330❀5 小时前
Linux命名管道(FIFO)通信:从原理到实操,一文搞懂跨进程通信
大数据·linux·运维·服务器·elasticsearch·搜索引擎
嵌入式×边缘AI:打怪升级日志5 小时前
嵌入式Linux应用开发快速入门(从零到第一个程序)
linux·运维·notepad++
AI、少年郎6 小时前
MiniMind第 2 篇:破除大模型 “神秘感“, 环境搭建|Win/Linux 本地快速部署
linux·运维·服务器·ai·大模型训练·大模型微调·大模型原理