您的当前位置:首页正文

物理机与启动的Docker容器间的目录映射方式

2024-11-23 来源:个人技术集锦

第一步

进入宿主机的配置文件目录 

  • # 查看容器存放目录
  • 命令:docker info | grep Root
  • # 得到容器id
  • 命令:cd /var/lib/docker/containers
  • # 进入配置文件目录
  • 命令:cd /var/lib/docker/containers/容器id

第二步

修改config.v2.json文件

添加宿主机的/usr/local/scripts映射到容器的/scripts,找到“MountPoints”,添加下面的代码

如果“MountPoints”有内容,注意在下面代码前面加逗号:

"/scripts":{"Source":"/usr/local/scripts","Destination":"/scripts","RW":true,"Name":"","Driver":"","Type":"bind","Propagation":"rprivate","Spec":{"Type":"bind","Source":"/usr/local/scripts","Target":"/scripts"},"SkipMountpointCreation":false}

第三步

修改hostconfig.json文件

在hostconfig.json文件中添加下面的代码:

"Binds":["/usr/local/scripts:/scripts"]

第四步

启动docker和容器

  • # 重启docker
  • 命令:systemctl restart docker
  • # 重启容器
  • 命令:docker start [容器id]

第五步

测试。

启动docker和容器之后,可以查看宿主机的/scripts目录下的文件是否可以在容器内的/scripts目录下查看到。

若可以在容器内的/scripts目录下查看到,则说明目录映射成功;反之,则说明目录映射失败。

  • # 进到容器内
  • 命令:docker attach [容器id]
  • 或    docker exec [容器id]
  • # 进入/scripts目录
  • 命令:cd /scripts

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

显示全文