Django docker卡在pip安装上
我试docker的时候很头疼, 但这件事让我很难受 我试图在docker上安装django,但它卡在这条线上:Django docker卡在pip安装上,django,docker,dockerfile,Django,Docker,Dockerfile,我试docker的时候很头疼, 但这件事让我很难受 我试图在docker上安装django,但它卡在这条线上: Successfully installed asgiref-3.2.7 django-3.0.6 pytz-2020.1 sqlparse-0.3.1 Dockerfile: FROM python:3.6 COPY . /app WORKDIR /app CMD chmod +x entry.s # ENTRYPOINT ["./entry.sh"] # this will g
Successfully installed asgiref-3.2.7 django-3.0.6 pytz-2020.1 sqlparse-0.3.1
Dockerfile:
FROM python:3.6
COPY . /app
WORKDIR /app
CMD chmod +x entry.s
# ENTRYPOINT ["./entry.sh"] # this will give me, ./entry.sh: Permission denied
ENTRYPOINT ["sh", "./entry.sh"]
entry.sh:
echo entry point for django image
cd code
pip install -r requirements.txt
# for keep container running, I couldn't find any other way
touch app.log
tail -f app.log
docker运行输出:
entry point for django image
Collecting django
Downloading Django-3.0.6-py3-none-any.whl (7.5 MB)
Collecting sqlparse>=0.2.2
Downloading sqlparse-0.3.1-py2.py3-none-any.whl (40 kB)
Collecting pytz
Downloading pytz-2020.1-py2.py3-none-any.whl (510 kB)
Collecting asgiref~=3.2
Downloading asgiref-3.2.7-py2.py3-none-any.whl (19 kB)
Installing collected packages: sqlparse, pytz, asgiref, django
Successfully installed asgiref-3.2.7 django-3.0.6 pytz-2020.1 sqlparse-0.3.1
--> stuck here
在
entry.sh
中,我可以看到,您创建了一个空日志文件,并跟踪它。因此没有回应。而是运行django服务器:
# remove the log tailing file
python manage.py migrate
python manage.py runserver 0.0.0.0:8000
现在,在构建过程中安装依赖项是一个很好的实践。这样可以减少运行docker容器的时间。docker还可以分层缓存这些安装,因此可以缩短构建时间。因此,我建议如下创建Dockerfile
:
FROM python:3.6
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
EXPOSE 8000
CMD python manage.py migrate;python manage.py runserver 0.0.0.0:8000
无需为此实现创建入口点。如果您想查看日志,请查看docker的日志。下面是一个如何做到这一点的示例:
docker logs -f <container name>
docker日志-f
在条目.sh
中,我可以看到,您创建了一个空日志文件,并跟踪它。因此没有回应。而是运行django服务器:
# remove the log tailing file
python manage.py migrate
python manage.py runserver 0.0.0.0:8000
现在,在构建过程中安装依赖项是一个很好的实践。这样可以减少运行docker容器的时间。docker还可以分层缓存这些安装,因此可以缩短构建时间。因此,我建议如下创建Dockerfile
:
FROM python:3.6
COPY . /app
WORKDIR /app
RUN pip install -r requirements.txt
EXPOSE 8000
CMD python manage.py migrate;python manage.py runserver 0.0.0.0:8000
无需为此实现创建入口点。如果您想查看日志,请查看docker的日志。下面是一个如何做到这一点的示例:
docker logs -f <container name>
docker日志-f
但触碰和尾部是在pip安装之后,问题是它无法通过pip安装。否。它已经完成了pip安装。但同样,这不是推荐的程序。请按照给出的示例进行安装,安装是构建过程的一部分,但触摸和尾部是在pip安装之后,问题是它不会通过pip安装。否。它已经完成了pip安装。但同样,这不是推荐的程序。请按照给出的示例进行安装,安装是构建过程的一部分