docker - 如何在docker-compose中设置docker卷的绝对路径?

标签 docker docker-compose

我有一个非常简单的docker-compose.yml,它为mysql容器创建初始卷:

version: '3.7'
services:
  db:
    image: mysql:8.0
    volumes:
      - database:/var/lib/mysql
   
volumes:
  database:
    name: mysql-database

问题:如何告诉 docker 在首次启动时在特定绝对路径上创建卷,而不是在 /var/lib/docker/volumes/mysql-database/ 处创建卷?

我想将目标路径设置为 /mnt/docker/volumes/mysql-database/ 以便将其放在另一个磁盘上。但只有这个卷,而不是所有 docker 卷!

这可能吗?

最佳答案

也许不使用卷部分,因为您不知道 docker 将数据放在哪里。

因此,请指定完整路径。它确实适用于我们的安装。 有兴趣知道这何时不适用于您的情况。

version: '3.7'
services:
  db:
    image: mysql:8.0
    volumes:
      - /mnt/docker/volumes/mysql-database:/var/lib/mysql

关于docker - 如何在docker-compose中设置docker卷的绝对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73047824/

相关文章:

java - 从 java 程序内部运行 docker 容器

docker - 如何从日志中删除带有服务名称的前缀?

docker - kafka-connect-jdbc源连接器OOM

angular - nginx 反向代理,用于在 nginx 上运行的 Angular 应用程序

docker - 使用Docker Compose运行多个GlassFish

docker - 命名的 docker 卷未使用 docker-compose 更新

docker - 无法从Docker拉取尽管Docker Hub中存在镜像

django - 无法访问正在运行的Django服务器?

node.js - 为 React App 构建的 Docker 在 Gitlab CI runner 中失败

django - docker-compose 中的collectstatic权限问题