我正在尝试使用docker-compose构建django项目,例如Docker Documentation (我在Windows 10 Home中使用Docker工具箱)。
但是当我执行命令时:
sudo docker-compose运行Web django-admin startproject composeexample。
我得到一个 bash:sudo:找不到命令
然后,如果我执行相同的命令而不使用“ sudo”:
docker-compose运行Web django-admin startproject composeexample。
已创建图像,但未显示django项目文件夹:
最后,当我再次运行命令时,我得到:
表明该项目是在上一步中创建的。
Dockerfile是:
FROM python:3
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY requirements.txt /code/
RUN pip install -r requirements.txt
COPY . /code/
docker-compose.yml
version: '3'
services:
db:
image: postgres
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
volumes:
- .:/code
ports:
- "8000:8000"
depends_on:
- db
和requirements.txt:
Django>=2.0,<3.0
psycopg2>=2.7,<3.0
答案 0 :(得分:0)
因此,当您执行docker-compose运行时,它会在容器内运行命令,现在在docker-compose中,您已将运行docker-compose的文件夹中的卷映射到/ code中的容器。 / p>
现在,为什么要尝试从容器内部而不是从终端创建项目,然后尝试构建容器?
因此,在该文件夹中创建项目,然后创建run docker-compose up
。应该可以。