【发布时间】:2016-07-27 20:55:57
【问题描述】:
我想我不明白。首先,我创建了 docker-machine:
$ docker-machine create -d virtualbox dev
$ eval $(docker-machine env dev)
然后我写了 Dockerfile 和 docker-compose.yml:
FROM python:2.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt
ADD . /code/
version: '2'
services:
db:
image: postgres
web:
build: .
restart: always
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
links:
- db
最后,我构建并启动了镜像:
$ docker-compose build --no-cache
$ docker-compose start
我检查了我的虚拟机的 ip
$ docker-machine ip dev
并在我的浏览器中成功打开了该网站。但是当我对我的代码进行一些更改时 - 什么也没发生。所以我登录到“开发”机器:
$ docker-machine ssh dev
我没有找到我的代码!所以我登录到 docker “web” 图像:
$ docker exec -it project_web_1 bash
还有一个代码,但没有改变。
码头机器有什么用?有什么意义?为什么docker在更改后不同步文件?看起来 docker + docker-machine + docker-compose 在本地开发中很痛苦:-)
谢谢。
【问题讨论】:
标签: docker-compose docker-machine