该镜像已官方弃用,推荐使用标准`python`镜像替代,2016年12月31日后不再更新。其原价值为预安装mysql-client、postgresql-client和sqlite3,用于Django框架,现可通过自定义Dockerfile实现类似功能。
收藏数: 1.2千
下载次数: 23131718
类型:
library/django该镜像已官方弃用,推荐使用标准python镜像替代,2016年12月31日后将不再接收更新。请相应调整您的使用方式。
对于该镜像的大多数使用场景,Django实际上并非从此镜像获取,而是来自项目的requirements.txt,因此其唯一“价值”是预安装了mysql-client、postgresql-client和sqlite3,用于Django框架的各种使用场景。
例如,以下Dockerfile可作为使用PostgreSQL的Django项目的良好起点:
dockerfileFROM python:3.4 RUN apt-get update \ && apt-get install -y --no-install-recommends \ postgresql-client \ && rm -rf /var/lib/apt/lists/* WORKDIR /usr/src/app COPY requirements.txt ./ RUN pip install -r requirements.txt COPY . . EXPOSE 8000 CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]
Dockerfile链接1.10.4-python3, 1.10-python3, 1-python3, python3, 1.10.4, 1.10, 1, latest (3.4/Dockerfile)python3-onbuild, onbuild (3.4/onbuild/Dockerfile)1.10.4-python2, 1.10-python2, 1-python2, python2 (2.7/Dockerfile)python2-onbuild (2.7/onbuild/Dockerfile)获取帮助的途径:
Docker社区论坛、Docker社区Slack 或 Stack Overflow
提交问题的地址:
[***]
维护者:
Docker社区
镜像 artifact 详情:
repo-info 仓库的repos/django/目录(历史记录)
(镜像元数据、传输大小等)
镜像更新:
带有library/django标签的 official-images PR
official-images 仓库的library/django文件(历史记录)
本描述的来源:
docs 仓库的django/目录(历史记录)
支持的 Docker 版本:
最新版本(尽最大努力支持低至1.6版本)
Django 是一个免费开源的 Web 应用框架,使用 Python 编写,遵循模型-视图-控制器(MVC)架构模式。Django 的主要目标是简化复杂的、数据库驱动网站的创建,强调组件的可重用性和“可插拔性”。
***.org/wiki/Django_(web_framework)
!logo
DockerfiledockerfileFROM django:onbuild
将此文件放在应用根目录,与requirements.txt同级。
该镜像包含多个ONBUILD触发器,可覆盖大多数应用场景。构建过程会执行COPY . /usr/src/app、RUN pip install、EXPOSE 8000,并将默认命令设置为python manage.py runserver。
然后可以构建并运行 Docker 镜像:
console$ docker build -t my-django-app . $ docker run --name some-django-app -d my-django-app
可通过浏览器访问[***]进行测试;若需从主机外部访问,可使用以下命令在http://localhost:8000访问:
console$ docker run --name some-django-app -p 8000:8000 -d my-django-app
Dockerfile当然,若不想使用便捷的ONBUILD触发器,也可直接使用docker run命令,无需在项目中添加Dockerfile:
console$ docker run --name some-django-app -v "$PWD":/usr/src/app -w /usr/src/app -p 8000:8000 -d django bash -c "pip install -r requirements.txt && python manage.py runserver 0.0.0.0:8000"
若要生成新 Django 项目的脚手架,可执行以下命令:
console$ docker run -it --rm --user "$(id -u):$(id -g)" -v "$PWD":/usr/src/app -w /usr/src/app django django-admin.py startproject mysite
这将在当前目录下创建名为mysite的子目录。
django镜像有多种变体,适用于不同使用场景。
django:<version>这是默认镜像。若不确定需求,建议使用此变体。它既可作为临时容器(挂载源代码并启动容器以运行应用),也可作为构建其他镜像的基础。
django:onbuild此镜像简化了衍生镜像的构建。对于大多数场景,在项目根目录创建包含FROM django:onbuild的Dockerfile,即可快速创建独立的项目镜像。
虽然onbuild变体有助于“快速启动”(短时间内实现 Docker 化),但不建议在项目中长期使用,因为无法控制ONBUILD触发器的执行时机(另见docker/docker#5714、docker/docker#8240、docker/docker#***)。
当熟悉项目在 Docker 中的运行方式后,建议调整Dockerfile,继承非onbuild变体,并将onbuild变体Dockerfile中的命令(将ONBUILD行移至末尾并移除ONBUILD关键字)复制到自己的文件中,以便更好地控制这些命令,同时提高Dockerfile的透明度,便于自己和他人理解其功能。这也能更轻松地添加额外需求(如在执行原ONBUILD步骤前安装更多包)。
查看此镜像中包含软件的许可证信息。
以下是 django 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 版本下载页面。






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务