加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Docker撰写命名卷:在主机上查找卷

发布时间:2020-12-16 03:52:53 所属栏目:安全 来源:网络整理
导读:我有一个docker-compose.yml: version: '2'services: db: image: mysql:5.7 volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: wordpress MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: wordpress

我有一个docker-compose.yml:

version: '2'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: wordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_PASSWORD: wordpress
volumes:
    db_data:

当我运行这个docker-compose up -d然后执行docker inspect -f'{{(index .Mounts 0).Source}}’ef8be254a08b为正在运行的db容器获取指定主机上卷位置的Source,如果我是目录(ls / var / lib / docker / volumes / test_db_data / _data:没有这样的文件或目录),我总是得到“没有这样的文件或目录”.
如何才能获得卷的真实位置?

最佳答案
所以我得到了答案.重点是Mac上的Docker仍在VM中运行.因此,系统路径仍然相对于VM而不是Mac.所有容器都存储在VM中,位于?/ Library / Containers / com.docker.docker / Data / com.docker.driver.amd64-linux / Docker.qcow2

进入VM使用:

screen  ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty

然后你可以看到docker inspect {container_id}中给出的Source文件夹的内容:

ls /var/lib/docker/volumes/test_db_data/_data

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读