wed*_*dwo 7 docker docker-compose
当我手动创建一个卷并将其包含在 docker-compose 中时,如果我没有在卷标记前添加 docker_ 前缀,docker compose 会创建一个以 docker_ 为前缀的新卷 例如:我使用以下命令创建一个卷:
docker volume create myvolume
Run Code Online (Sandbox Code Playgroud)
它在 /var/lib/docker/volumes/myvolume 中可见。我将其包含在我的 docker-compose yaml 文件中,但是当我运行 docker-compose 时,会在 /var/lib/docker/volumes/docker_myvolume 创建一个新卷 如果我将我的卷称为 docker_myvolume 并将其包含在我的 docker-compose yaml 中,它使用它并且不创建它自己的。
这是正常行为吗?
Mus*_*did 13
是的,这是正常行为。当您在docker-compose.yml文件中指定不带前导前缀的卷时driver_,Docker Compose 将创建一个名称以 为前缀的新卷driver_。这是因为 Docker Compose 使用默认的驱动程序来创建和管理卷,这就是local驱动程序。
您可以在docker-compose.yml文件中指定一个卷,并使用external告诉 Docker Compose 使用现有卷而不是创建新卷的选项。例如:
version: '3'
services:
myservice:
volumes:
- type: volume
source: myvolume
target: /app/data
volume:
external: true
Run Code Online (Sandbox Code Playgroud)
这将告诉 Docker Compose 使用现有卷myvolume而不是创建新卷。
| 归档时间: |
|
| 查看次数: |
4259 次 |
| 最近记录: |