Dockerize Django 应用程序失败,错误"/bin/sh: [python3,: not found"



我的docker组成文件如下:

Django_2.2:
build:
context: .
dockerfile: Dockerfile_Build_Django
# Give an image name/tag
image: django_2.2:iot 
container_name: Django_2.2
depends_on: 
- Django_Mongo_4.2.12
networks:
sw_Django:
ipv4_address: 192.168.110.12
ports:
- 8000:80
restart: always
volumes: 
- type: volume
source: vol_django_codes
target: /usr/src/app

我的docker文件";Dockerfile_Build_Django";如下所示:

FROM python:3.9.3-alpine3.13
ENV PYTHONUNBUFFERED 1
RUN mkdir /code
WORKDIR /code
COPY . .
RUN pip install -r requirements.txt
# CMD ["python","./IoTSite/manage.py","runserver","0.0.0.0:80"]
CMD python ./IoTSite/manage.py runserver 0.0.0.0:80

requirements.txt如下:只有1行

Django == 2.2.17

但当我跑步时;docker compose up";,它失败了,出现以下错误,

[root@Django]# docker logs Django_2.2 
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found
/bin/sh: [python3,: not found

我已经搜索解决方案很长时间了,并尝试了通过谷歌找到的许多修复程序,但到目前为止还没有成功。任何帮助都将不胜感激。我觉得参与IT是浪费生命,因为根据指南/用户手册编码5分钟,然后进行数小时甚至数天的故障排除。。。

如果有帮助的话,还有我的:

FROM python:3.8
ADD project /app
WORKDIR /app
#(for production only)
#RUN pip3 install --default-timeout=10 --no-cache-dir -r requirements.txt
RUN pip3 install --upgrade pip
RUN pip3 install -r requirements.txt
EXPOSE 80
CMD ["gunicorn", "project.wsgi:application", "--bind", "0.0.0.0:80", "--reload"]

我建议您使用gunicorn在生产环境中运行服务器。

最新更新