我对如何使用命名数据卷(而不是数据容器)感到困惑。
我有一个app_src
安装到的命名数据卷/usr/src/app
使用 docker compose 文件但是,在(本地)对我的源代码进行更改后,构建映像不会更新卷。
我正在像这样构建图像,
docker-compose -f development.yml build
并运行它docker-compose -f development.yml up -d
。
为了确认卷没有改变,我附加到正在运行的容器中,并且确实,源代码没有更新。
这是我的 docker compose 文件development.yml
和Dockerfile
我的web
服务。版本:'2'
services:
web:
restart: always
build: ./web
expose:
- "8000"
volumes:
- app_src:/usr/src/app
links:
- postgres:postgres
env_file: development.env
command: ./start_web.sh
volumes:
app_src: {}
FROM python:3.4.4
WORKDIR /usr/src/app
RUN rm -rf /usr/src/app/*
COPY . /usr/src/app/
RUN pip install --no-cache-dir -r requirements.txt
我可以通过像这样安装主机来使其工作,
volumes:
- ./web/src:/usr/src/app
我在运行 docker 1.11.2 的 Ubuntu 16.04 上。我的理解错了吗?我确实查看了文档,但我可以找到任何可以很好地解释该卷的内容。