美文网首页
Docker踩坑指南

Docker踩坑指南

作者: LazzMan | 来源:发表于2020-10-22 21:22 被阅读0次

使用docker compose数据卷绑定宿主机目录时,目录不存在时启动报错

docker compose在Version 2.3绑定数据卷时添加了长语法绑定卷支持。例如下面这种形式:

version: "2.4"
services:
  web:
    image: nginx:alpine
    ports:
      - "80:80"
    volumes:
      - type: volume
        source: mydata
        target: /data
        volume:
          nocopy: true
      - type: bind
        source: ./static
        target: /opt/app/static
networks:
  webnet:
volumes:
  mydata:

短语法则是这种形式:

volumes:
  # Just specify a path and let the Engine create a volume
  - /var/lib/mysql

  # Specify an absolute path mapping
  - /opt/data:/var/lib/mysql

  # Path on the host, relative to the Compose file
  - ./cache:/tmp/cache

  # User-relative path
  - ~/configs:/etc/configs/:ro

  # Named volume
  - datavolume:/var/lib/mysql

创建绑定安装时,使用长语法要求事先创建引用的文件夹,如果文件夹不存在则启动报错。如果使用短语法,宿主机目录不存在则会自动创建。

原理是长短语法底层使用的docker运行命令不同,短语法运行时使用的-v进行卷绑定,而长语法则使用了-mount进行卷绑定。

docker的绑定卷细节请参考官方文档Use bind mounts

compose的更多细节请阅读docker compose数据卷

相关文章

  • JavaScrip-StepPitGuide《JavaScrip

    《JavaScript踩坑指南》JavaScrip-StepPitGuide? 《JavaScript踩坑指南》 ...

  • Docker踩坑指南

    使用docker compose数据卷绑定宿主机目录时,目录不存在时启动报错 docker compose在Ver...

  • 2019-08-14

    docker 搭建 gogs,drone , mysql 踩坑记录,防止以后再踩啊 docker 创建 桥接网络...

  • Docker Registry安装

    之前一直使用Nexus管理Docker镜像,后期发现Nexus对于Docker的支持并不是很完善,踩了许多坑(踩过...

  • Docker踩坑

    安装 检查Docker 要求 Ubuntu 系统的内核版本高于 3.10 ,使用uname -r 安装 : sud...

  • Docker踩坑指南1:Docker的基本使用

    Docker现在是一门非常流行的技术,其实之前就一直想学,不过一是没什么时间;二是没有结合实践,官方文档又介绍的不...

  • Docker踩坑指南2:Dockerfile和Docker Co

    一、Dockerfile Dockerfile 用途 Dockerfile是用来干嘛的?之前我们介绍了Docker...

  • mac下安装docker

    最近折腾springcloud,很多服务需要运行在docker上,怕以后再次踩坑,记录如下:下载Docker首先,...

  • 前端学习安利

    前端面试题nuxt踩坑指南WebGLes6flexboxasync/awaitwebDocsVue keep-al...

  • Docker踩坑日记

    笔者这里主要是尝试三种方式,一是在kali上安装docker,另一种是在阿里云服务器上安装docker,后来发现国...

网友评论

      本文标题:Docker踩坑指南

      本文链接:https://www.haomeiwen.com/subject/vpgpmktx.html