1

我尝试将 Fig+Django 教程中的项目布局更改为以下内容:

.
├── docker
│   └── django
│       ├── Dockerfile
│       └── requirements.txt
├── fig.yml
└── project
    ├── figexample
    │   ├── __init__.py
    │   ├── __init__.pyc
    │   ├── settings.py
    │   ├── settings.pyc
    │   ├── urls.py
    │   ├── urls.pyc
    │   ├── wsgi.py
    │   └── wsgi.pyc
    └── manage.py

我的 fig.yml 看起来像:

db:
  image: postgres
web:
  build: ./docker/django
  volumes:
      - "project/:/code"
  ports:
    - "8000:8000"
  links:
    - db
  command: "ls -a ."

但是由于某些原因而不是project目录,它会挂载当前目录。在这种情况下,结果fig logs将是:

#$ fig logs
Attaching to figdjango_web_1, figdjango_db_1
db_1  | LOG:  database system was shut down at 2014-11-05 15:15:41 UTC
db_1  | LOG:  database system is ready to accept connections
db_1  | LOG:  autovacuum launcher started
web_1 | .
web_1 | ..
web_1 | .fig.yml.swp
web_1 | docker
web_1 | fig.yml
web_1 | project
figdjango_web_1 exited with code 0

还有我的 Dockerfile:

FROM python:2.7
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
ADD requirements.txt /code/
RUN pip install -r requirements.txt

我做错了什么?如何将 /project 挂载到 /code?

github上的示例

4

1 回答 1

1

您在 github 上链接到的示例与您在问题中描述的有点不同。

在 github 示例中,替换

command: python /project/manage.py runserver 0.0.0.0:8000

command: python /code/manage.py runserver 0.0.0.0:8000`

它有效。

于 2014-11-06T00:05:14.523 回答