【docker挂载原理】

背景:在实际的项目运行测试过程中,需要频繁修改程序中的properties配置文件,然后重新打镜像,如此不断打镜像耗费大量的精力和时间,我们可以通过挂载方式,将容器内的程序文件挂载到宿主机的某个目录下,这样可以通过维护宿主机的目录文件,使得容器读取外部配置文件的方式,实现不用打镜像就修改程序包内的配置文件,简化步骤

如何配置宿主机docker的挂载目录

一、使用如下命令拉去镜像
docker-compose -f /opt/docker-compose/middleware.yml  up -d

在这里插入图片描述

二、发现会报错找不到文件,可以注释掉yml中配置的映射,配置文件的挂载先注释掉,然后从docker容器里拷贝出来实现挂载启动外部配置文件,不需要重打docker镜像启动,修改application.properties完后上传到config下
tu2

如何从docker容器中copy文件到宿主机呢

docker cp 命令将容器中的文件复制到宿主机上。以下是基本语法:
docker cp <container_name_or_id>:<path_to_file_inside_container> <path_to_destination_on_host>
这是一个例子
[11:02:06 root@localhost ~]#docker cp 8bcc171a5b47:/usr/share/elasticsearch/config /docker/elasticsearch/config/
Preparing to copy...
Copying from container - 18.94kB
Successfully copied 18.94kB to /docker/elasticsearch/config/

请注意,您需要在容器名称或 ID 和路径之间使用冒号 :分隔符,并且路径应该是相对于容器的根目录。此外,您需要在目标路径中指定完整的目标路径,包括目标文件名(如果需要)。容器重启过程中是无法进入容器内的,要保证容器正常运行时才可以

如果您需要将宿主机上的文件复制到容器中,只需颠倒源和目标路径即可。例如:

docker cp ~/Desktop/data.txt container1:/app/
此命令将 ~/Desktop/data.txt 文件复制到容器 container1 中的 /app/ 目录中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值