匿名用户

这个人很神秘,什么信息也没有

关闭
蜀枕清何
2025-11-29
点 赞
0
热 度
6
评 论
0

docker目录挂载机制

文章摘要

智阅GPT

经过测试,使用 docker 的目录挂载,有以下规则,以 nginx 容器做测试

规则

1、若宿主机和默认容器都不存在目录,则会创建所写的对应目录

命令:docker run --name mynginx5 -p 101:80 -v /data/nginx:/etc/nginx1 -d nginx:latest

容器:

img

宿主机:

img

2、若宿主机存在目录,且里面有文件,而容器没有目录,则会将宿主机的目录同步映射到容器

命令:docker run --name mynginx5 -p 101:80 -v /data/nginx:/etc/nginx1 -d nginx:latest

容器:

img

宿主机:

img

3、若容器有目录,且有文件,宿主机有目录,没有文件。 会将目录覆盖,以宿主目录为主,挂载后的容器目录为空。因为宿主机的目录为空

命令:docker run --name mynginx777 -p 100:80 -v /data/nginx/html:/usr/share/nginx/html -d nginx:latest

正常容器的目录下有页面:

img

但是目录被宿主机覆盖:

img

宿主机:

img

可以运行成功:

img

访问页面:

img

总结

  docker 的容器挂载机制,总的来说就是,没有目录就创建,以宿主机的文件目录为主,直接覆盖容器的目录(就是将目录复制到容器,包括目录所有文件)

注意事项

  在进行容器目录挂载的时候,若要设置配置文件的挂载,只需要挂载相对应的配置文件,且宿主机的配置文件需要有默认值;

在容器启动时,会使用挂载的配置文件进行初始化,若文件找不到或为空,会导致启动失败。若挂载整个配置文件的目录,会将容器默认的配置文件夹覆盖

从而导致启动失败,因此只需要将要修改的配置文件进行挂载映射即可。


用键盘敲击出的不只是字符,更是一段段生活的剪影、一个个心底的梦想。希望我的文字能像一束光,在您阅读的瞬间,照亮某个角落,带来一丝温暖与共鸣。

蜀枕清何

intp 逻辑家

站长

具有版权性

请您在转载、复制时注明本文 作者、链接及内容来源信息。 若涉及转载第三方内容,还需一同注明。

具有时效性

目录

欢迎来到蜀枕清何的站点,为您导航全站动态

10 文章数
1 分类数
1 评论数
1标签数
最近评论
蜀枕清何

蜀枕清何


hi

热门文章

k8s安装

2025-11-29

22
正则解析

2025-11-29

12
Vue2基础

2025-11-29

11