Docker-为已运行的容器添加挂载目录_给已经安装的容器添加新的挂载(4)

本文介绍了如何在不删除重建容器的情况下,为一个正在运行的Mysql测试容器添加新的挂载目录,以实现自动备份与恢复的功能。主要步骤包括复制挂载目录,查看并编辑容器的配置文件。作者分享了个人经历,并提供了一份全面的Linux运维学习资料。
摘要由CSDN通过智能技术生成
  • 起初有一个Mysql的容器,是一直用来测试的,只挂载了my.cof的配置文件
  • 后续有一个需求是需要做mysql容器的自动备份与恢复需要挂载mysql目录,不想再删除重建容器了,就想着看能不能直接为当前这个已运行的mysql容器添加一个挂载目录,这样就不用麻烦删除重建倒一波了,也测试一下修改已运行容器参数的情况
操作步骤
  1. 先将需要挂载的目录复制出来
docker cp mysql8.0:/var/lib/mysql /var/data/MYSQL

  1. 查看容器存放根目录
# docker info | grep 'Root'
[root@SKSGW ~]WARNING: IPv4 forwarding is disabled
Docker Root Dir: /var/lib/docker

  1. 查看要操作的容器id
[root@SKSGW ~]# docker ps | grep mysql
bcf974372778        mysql:8.0-mod                                             "docker-entrypoint.s…"   3 weeks ago         Up 19 minutes                           mysql8.0

  1. 进入该容器对应的存放目录(在容器存放根目录下的/containers找容器id开头的目录)
[root@SKSGW ~]# cd /var/lib/docker/containers/bcf97437277898994ad
要在已经运行的MySQL容器挂载一个目录并将其指向MySQL的配置文件目录,可以使用`docker update`命令来更容器的配置。 请按照以下步骤操作: 1. 确定MySQL容器的名称或ID。您可以使用以下命令列出正在运行容器: ``` docker ps ``` 2. 使用`docker inspect`命令获取MySQL容器的详细信息,包括其配置文件目录的路径。假设容器名称为`mysql-container`,则运行以下命令: ``` docker inspect mysql-container ``` 在输出的JSON结果中,找到`"Source"`字段的值,它表示容器中MySQL配置文件的路径。例如,它可能是`/etc/mysql/my.cnf`。 3. 准备要挂载的主机目录,用于存放MySQL配置文件。假设您希望将主机上的目录`/path/on/host`挂载容器中作为配置文件目录。 4. 使用`docker update`命令来更MySQL容器,并将主机目录挂载容器中的配置文件目录运行以下命令: ``` docker update --mount type=bind,source=/path/on/host,target=/etc/mysql/my.cnf mysql-container ``` 这将把主机上的目录`/path/on/host`挂载到MySQL容器中的配置文件目录。确保将`mysql-container`替换为您实际的MySQL容器名称。 5. 重启动MySQL容器,使配置文件的更改生效: ``` docker restart mysql-container ``` 现在,您已经成功将一个主机目录挂载到正在运行的MySQL容器中的配置文件目录。请注意,这些更改只适用于容器的当前运行时。如果容器被删除或重启动,您需要重执行步骤3到步骤5来重挂载配置文件目录
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值