我应该选择docker进行python的独立开发吗?

我应该选择docker进行python的独立开发吗?,python,ubuntu,docker,Python,Ubuntu,Docker,我正在开发一些python项目。有一些关于docker的问题。我以前在python开发中使用了virutalenv。不同的python版本不同的依赖项与不同的项目当然有些项目需要phantomjs这样的第三个软件。那么,我应该如何配置dockerfile?容器需要多少空间,部署到云服务器是否有效 我知道dockerfile中应该有一些cmd显示 FROM ubuntu:16.04 RUN apt-get update && apt-get install -y openssh-s

我正在开发一些python项目。有一些关于docker的问题。我以前在python开发中使用了virutalenv。不同的python版本不同的依赖项与不同的项目当然有些项目需要phantomjs这样的第三个软件。那么,我应该如何配置dockerfile?容器需要多少空间,部署到云服务器是否有效

我知道dockerfile中应该有一些cmd显示

FROM ubuntu:16.04
RUN apt-get update && apt-get install -y openssh-server && apt-get install -y python3.5 && apt-get install -y python-pip && apt-get install blablabla

正如您所知,Docker是一个国际软件平台,用于通过各种软件平台构建、发布和运行应用程序。 因此,在安装Docker之后,您有两个选项可用于配置dockerfile

FROM ubuntu:16.04
RUN apt-get update && apt-get install -y openssh-server && apt-get install -y python3.5 && apt-get install -y python-pip && apt-get install blablabla
您可以在“c:\ProgramData\docker\config\daemon.json”中找到配置文件 你会发现这些信息

{
    "authorization-plugins": [],
    "dns": [],
    "dns-opts": [],
    "dns-search": [],
    "exec-opts": [],
    "storage-driver": "",
    "storage-opts": [],
    "labels": [],
    "log-driver": "", 
    "mtu": 0,
    "pidfile": "",
    "graph": "",
    "cluster-store": "",
    "cluster-advertise": "",
    "debug": true,
    "hosts": [],
    "log-level": "",
    "tlsverify": true,
    "tlscacert": "",
    "tlscert": "",
    "tlskey": "",
    "group": "",
    "default-ulimits": {},
    "bridge": "",
    "fixed-cidr": "",
    "raw-logs": false,
    "registry-mirrors": [],
    "insecure-registries": [],
    "disable-legacy-registry": false
}
因此,在配置Docker引擎的“主机”键中,端口2375处的所有传入连接都使用TCP

{
    "hosts": ["tcp://0.0.0.0:2375"]
}
您还可以在备用路径中存储特定的图像和容器。如果未指定,默认值为c:\programdata\docker

{    
    "graph": "d:\\docker"
}
否则,为了配置dockerfile,您可以通过定位配置文件“c:\ProgramData\docker\config\daemon.json”来使用默认的网络和docker安全组

{
    "bridge" : "none" # sets default network 
}

{
    "group" : "docker" # sets default security
}
容器将编码多少空间取决于每个容器占用的磁盘空间量。您可以通过以下链接找到容器占用的空间:artifacts..appspot.com

替换 并使用以下命令运行:gsutil du gs://artifacts..appspot.com

部署到云服务器非常有效,因为Docker有其底层Docker云。但首先,假设您在本地安装了Docker引擎(如上所述如何配置),您将需要Docker cloud CLI。反过来,管理起来也没那么难。不过,只需根据需要正确安装docker cloud CLI的平台进行一些研究

(docker运行dockercloud/cli-h)