Docker新手在这里。
我正在阅读有关如何使用Docker设置Django webapp的documentation,我意识到dockerfile使用
FROM python:2.7
我仍然可以使用相同的dockerfile内容,但将其更改为
FROM ubuntu:14.04
并使它适用于Django 1.8.1的python 2.7或3.4?
答案 0 :(得分:2)
使用ubuntu,您可以运行django应用程序。你只需要为它安装依赖项(例如,在Dockerfile中有说明)。
在Dockerfile中,添加如下内容:
RUN apt-get install python
RUN apt-get install django
如果在新的基本图像中未实现某些命令,则可能还必须使用等效命令替换这些命令(如果使用 archlinux ,请将apt-get
替换为pacman
例如 ubuntu 。
但是如果你使用django,你也可以安装并使用pip。
答案 1 :(得分:1)
docker FROM 指令指定开始构建图像的基本图像。
如果你去python:2.7 dockerfile,你会看到它指定了下一个:
FROM buildpack-deps:jessie
这意味着此图像将使用图像 buildpack-deps:jessie ,并在此基础上构建所有与python相关的依赖项。
您可以将其视为应用程序层。您设置基本映像(在FROM语句中),然后安装启动应用程序所需的任何内容。
示例:
我需要一个安装了wget的映像,所以我创建了一个与此类似的Dockerfile:
FROM debian:jessie
RUN apt-get update && apt-get install wget
...
我可以将此图片称为: wgetimage 。然后,如果我需要一个wget容器来下载某些东西,我可以使用这个图像:
FROM wgetimage
RUN wget ....
在这种特定情况下,ubuntu基本映像将不具有与python相关的包,因此您需要在Dockerfile上添加它们。如果您只需要启动python应用程序,那么使用python:2.7(或python:3.4)作为基本映像可能会更好。
希望它有所帮助。