docker - mysql 卷 db-data :/var/lib/mysql/data stored? 在哪里

标签 docker

我试图了解 docker,但对卷的工作方式感到困惑。

关于official documentation有一些代码类似于我正在使用的 docker-compose.yml 文件。

version: "3.7"

services:
  wordpress:
    image: wordpress
    ports:
      - "8080:80"
    networks:
      - overlay
    deploy:
      mode: replicated
      replicas: 2
      endpoint_mode: vip

  mysql:
    image: mysql
    volumes:
       - db-data:/var/lib/mysql/data
    networks:
       - overlay
    deploy:
      mode: replicated
      replicas: 2
      endpoint_mode: dnsrr

volumes:
  db-data:

networks:
  overlay:

我对 db-data:/var/lib/mysql/data 指的是什么以及 docker 实际存储数据库数据的位置感到困惑,尤其是 /var/lib/mysql 在主机上不作为目录存在。

最佳答案

所以这一行

volumes:
   - db-data:/var/lib/mysql/data

基本上将卷 db-data 从主机挂载到容器中的 /var/lib/mysql/data 中。

如果 db-data 不存在,Docker 会在主机中为您创建一个。

您可以阅读更多here.

关于docker - mysql 卷 db-data :/var/lib/mysql/data stored? 在哪里,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58090668/

相关文章:

linux - 管理每个容器的 IP 地址

mongodb - GitLab CI:Docker容器无法连接到MongoDB服务

docker - 更改 docker compose 中的共享内存大小

docker - 无法从待定状态恢复Docker群

Python 依赖关系以及 Docker 和 Crontab

docker - 将 Kubernetes 集群与 Docker 网络互连

windows - 无法使用 create-react-app 和 docker windows 获取 webpack 热重载

docker - 上下文截止日期延长 - prometheus - 在 docker 上运行时

php - 如何设置主机的PHP解释器以指向容器的PHP解释器

redis - 在Docker+Vagrant中安装Redis最简单的方法是什么