首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >docker-组合:为绑定挂载和托管挂载定义挂载

docker-组合:为绑定挂载和托管挂载定义挂载
EN

Stack Overflow用户
提问于 2016-12-23 10:20:10
回答 4查看 115.6K关注 0票数 52

我在用码头写作来定义我的服务。在码头,有两个概念码头体积。首先是关于bind mount:安装在主机上的存储。

代码语言:javascript
运行
复制
docker run -d --name web-app -v $HOST/location:/container/location -p 80:80 httpd:latest

其次是关于managed mount:抽象存储,不依赖主机。

代码语言:javascript
运行
复制
docker run -d --name web-app -v /container/location -p 80:80 httpd:latest

我想把这些概念映射到码头-构图。这意味着我如何定义bind mountmanaged mount时使用坞-撰写.

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-12-23 10:44:54

您可以在Docker:volumes一节中找到这些Docker概念

示例:

代码语言:javascript
运行
复制
volumes:
  # Just specify a path and let the Engine create a volume
  - /container/location

  # Specify an absolute path mapping
  - ./myfolder/location:/container/location
票数 41
EN

Stack Overflow用户

发布于 2019-04-09 21:29:57

虽然我回答得很晚。但也许这会对未来的人有所帮助。下面是这两种类型的配置。https://docs.docker.com/compose/compose-file/compose-file-v3/#volumes

代码语言:javascript
运行
复制
version: "3.2"
services:
  web:
    image: httpd:latest
    volumes:
      - type: bind
        source: $HOST/location
        target: /container/location
      - type: volume
        source: mydata
        target: /container/location
volumes:
  mydata:
票数 101
EN

Stack Overflow用户

发布于 2020-03-17 17:23:30

我知道现在回答已经很晚了,但我主要是为社区写这篇文章。

答案:

你只需要这样做:

代码语言:javascript
运行
复制
    volumes:
       - ./root/instantclient_12_2/ojdbc8.jar:/etc/kafka-connect/jars/ojdbc8.jar
       - type: bind
         source: $HOST/etc
         target: /kernel-etc

然后,为了在‘易于调试’模式下运行它,首先用docker-compose up执行它,当您确保它正常工作时,在它的末尾添加一个-d,在它上添加一个环。

重要备注

1-确保您的docker-compose版本至少是3.2,在我的例子中,它是3.7。要更新和删除旧版本,请执行以下操作:

代码语言:javascript
运行
复制
sudo apt-get remove docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

来源:https://github.com/10up/wp-local-docker/issues/58#issuecomment-476786006

不要忘记rm你的旧容器,这样你就不会面临与港口有关的奇怪问题。以下是如何:

代码语言:javascript
运行
复制
docker container stop YOUR_CONTAINER_ID
docker container rm YOUR_CONTAINER_ID

祝好运。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41299514

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档