Kum*_*nil 2 docker dockerfile docker-compose
我是 docker 新手,偶然发现了 docker-compose 文件。我了解所有其他属性的要点,但我不知道下面一行在做什么:
卷:-./data:/data/db
谁能帮我解决这个问题吗?
可以将多个卷附加到您的容器...每个卷都定义为一对
volumes:
- /parent/host/path01:/inside/container/path_one
- /parent/host/path02:/inside/container/path_another
Run Code Online (Sandbox Code Playgroud)
每对中的左侧是创建容器之前主机上可访问的预先存在的卷...右侧是新启动的容器从容器内部看到的左侧
在您的示例中,在启动 docker-compose 的同一目录中,显然存在一个名为 data 的目录...使用 ./data 将使用相对路径到达它...右侧 /data/db 是代码在你的容器中调用相同的目录
/full/path/to/reach/data:/data/db
Run Code Online (Sandbox Code Playgroud)
使用绝对路径来访问位于执行 docker-compose 的父主机上的同一个 ./data 目录
此卷映射允许父主机上的永久存储对容器变得可见(读/写)...因为容器文件系统是短暂的,因此当容器退出时就会消失此卷映射使容器可以访问指定路径的永久存储,其中必须出现在您的 yaml 文件中...对于像 mongo 这样的数据库容器尤其重要...容器中使用的所有未映射到卷 yaml 中的文件一旦容器存在就会消失
这是 mongo 的典型 yaml 片段,它可以访问父主机上的永久存储
loudmongo:
image: mongo
container_name: loud_mongo
restart: always
ports:
- 127.0.0.1:27017:27017
volumes:
- /cryptdata7/var/data/db:/data/db
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1571 次 |
最近记录: |