2016-10-18 42 views
1

我運行簡單的碼頭工人,組成示例所示here多克爾 - 撰寫教程不工作「巨蟒:無法打開文件「manage.py」

這裏是Dockerfile:

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

這裏是泊塢窗-compose.yml:

version: '2' 
services: 
    db: 
    image: postgres 
    web: 
    build: . 
    command: python manage.py runserver 0.0.0.0:8000 
    volumes: 
     - .:/code 
    ports: 
     - "8000:8000" 
    depends_on: 
     - db 

當我試圖啓動與碼頭工人,組成它的例子給了我以下:

[email protected]:~/projects/testcompose$ docker-compose up 
testcompose_db_1 is up-to-date 
Recreating testcompose_web_1 
Attaching to testcompose_db_1, testcompose_web_1 
web_1 | python: can't open file 'manage.py': [Errno 2] No such file or directory 
db_1 | The files belonging to this da... 

大概教程不是最新的,所以如果你知道答案,請寫在這裏。

+0

你有沒有運行過這個命令:'docker-compose使用'docker-compose.yml'運行web django-admin.py startproject composeexample .'文件夾內?它實際上會在Docker Volume中創建'manage.py'和所有與Django相關的文件。 – illagrenan

+0

是的,我做到了。其實問題是運行這個命令後項目結構不正確。它創建了另外一個帶有project和manage.py文件的composeexample文件夾。將所有文件移動一層之後,所有內容都按預期工作。 –

回答

1

如果您使用的是docker-machine或Docker Toolbox,可能是因爲該項目不在/Users目錄下。只有該目錄可用作VM中的共享文件夾。

您可以從配置中刪除volumes:,或將另一個共享文件夾添加到Virtualbox。

+0

@dhephin謝謝你的回答!我沒有在Ubuntu上使用docker-machine。在容器內啓動Django項目後,問題出現在項目結構不正確的問題上。 –

相關問題