|
# 写在最前面:强烈建议先阅读官方教程[Dockerfile最佳实践](https://docs.docker.com/develop/develop-images/dockerfile_best-practices/)
|
|
# 选择构建用基础镜像(选择原则:在包含所有用到的依赖前提下尽可能提及小)。如需更换,请到[dockerhub官方仓库](https://hub.docker.com/_/python?tab=tags)自行选择后替换。
|
|
|
|
# 选择基础镜像
|
|
FROM alpine:3.13
|
|
|
|
# 选用国内镜像源以提高下载速度
|
|
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tencent.com/g' /etc/apk/repositories \
|
|
&& apk add --update --no-cache python3 py3-pip \
|
|
&& rm -rf /var/cache/apk/*
|
|
|
|
# 拷贝当前项目到/app目录下
|
|
COPY . /app
|
|
|
|
# 设定当前的工作目录
|
|
WORKDIR /app
|
|
|
|
# 安装依赖到指定的/install文件夹
|
|
# 选用国内镜像源以提高下载速度
|
|
RUN pip config set global.index-url http://mirrors.cloud.tencent.com/pypi/simple \
|
|
&& pip config set global.trusted-host mirrors.cloud.tencent.com \
|
|
&& pip install --upgrade pip \
|
|
# pip install scipy 等数学包失败,可使用 apk add py3-scipy 进行, 参考安装 https://pkgs.alpinelinux.org/packages?name=py3-scipy&branch=v3.13
|
|
&& pip install --user -r requirements.txt
|
|
|
|
# 设定对外端口
|
|
EXPOSE 80
|
|
|
|
# 设定启动命令
|
|
CMD ["python3", "manage.py", "runserver", "0.0.0.0:80"]
|