用于构建/帮助部署Docker容器的工具。去码头。
dostack的Python项目详细描述
DoBuild
==
Docker Container Builder
----
`DoBuild'根据环境生成由类似于Yaml的合成文件指定的项目容器。
`DoTemple'模板文件(例如DockerFiles、Docker Stack.yaml's)基于环境。
-
pipsi install./dostack
features
--
-使用一个命令生成多个容器
-使用容器间依赖项控制生成顺序
-模板化Dockerfiles,例如,这样一个容器就可以从另一个容器访问,而不必编辑每个生成的dockerfile
Getting Started
----
在项目根目录中创建一个“dobuild.yaml”文件,具有这样的结构:
containers:
pinger:
上下文:./docker/pinger
dockerfile:。/docker/pinger/dockerfile.t
您好:
上下文:。
dockerfile:。/docker/hello/dockerfile.t
hello2:
上下文:./docker/hello2
dockerfile:。/docker/hello2/dockerfile.t
取决于:
-hello
这个例子定义了三个要构建的容器,*pinger*、*hello*和*hello2*。在这里,我们声明*hello2*依赖于*hello*,因此*hello*将始终在*hello2*
之前生成,现在要生成容器,请运行
dobuild
` dobuild`runs`docker build`under the hood for you,所以输出会很熟悉。
但不是*pinger*
模板
——
`dobuild'模板使用[胡子](https://mustache.github.io/mustache.5.html)模板创建文档文件。
例如,上面*hello2*的dockerfile:
from{containers.hello}
运行echo“building{containers.hello2}”
entrypoint echo hello,world,2!
您可以使用{{containers.<;name>;}`来引用当前生成中项目中任何容器的uri。其他可用标记:
-`{{docker.registry}`添加到容器uri的docker注册表(如果已定义)。
-`{{docker.prefix}`添加到容器uri的前缀(如果已定义)。
` dobuild`将用由注册表、前缀和容器名组成的有意义的名称来标记它们。
运行:
dobuild hello\
--registry.example.com\
--prefix owner/helloworld
` dobuild`将容器推送到指定的注册表。
环境变量也可以在环境变量中指定选项。请注意,命令行上的选项会覆盖环境。
dobuild_file=./dobuild.yaml dobuild.yaml的路径
dobuild_registry=registry.example.com docker registry
dobuild_prefix=owner/helloworld container uri prefix
dobuild_push=true建筑
==
Docker Container Builder
----
`DoBuild'根据环境生成由类似于Yaml的合成文件指定的项目容器。
`DoTemple'模板文件(例如DockerFiles、Docker Stack.yaml's)基于环境。
-
features
--
-使用一个命令生成多个容器
-使用容器间依赖项控制生成顺序
-模板化Dockerfiles,例如,这样一个容器就可以从另一个容器访问,而不必编辑每个生成的dockerfile
Getting Started
----
在项目根目录中创建一个“dobuild.yaml”文件,具有这样的结构:
containers:
pinger:
上下文:./docker/pinger
dockerfile:。/docker/pinger/dockerfile.t
您好:
上下文:。
dockerfile:。/docker/hello/dockerfile.t
hello2:
上下文:./docker/hello2
dockerfile:。/docker/hello2/dockerfile.t
取决于:
-hello
这个例子定义了三个要构建的容器,*pinger*、*hello*和*hello2*。在这里,我们声明*hello2*依赖于*hello*,因此*hello*将始终在*hello2*
之前生成,现在要生成容器,请运行
dobuild
` dobuild`runs`docker build`under the hood for you,所以输出会很熟悉。
但不是*pinger*
模板
——
`dobuild'模板使用[胡子](https://mustache.github.io/mustache.5.html)模板创建文档文件。
例如,上面*hello2*的dockerfile:
from{containers.hello}
运行echo“building{containers.hello2}”
entrypoint echo hello,world,2!
您可以使用{{containers.<;name>;}`来引用当前生成中项目中任何容器的uri。其他可用标记:
-`{{docker.registry}`添加到容器uri的docker注册表(如果已定义)。
-`{{docker.prefix}`添加到容器uri的前缀(如果已定义)。
` dobuild`将用由注册表、前缀和容器名组成的有意义的名称来标记它们。
运行:
dobuild hello\
--registry.example.com\
--prefix owner/helloworld
` dobuild`将容器推送到指定的注册表。
环境变量也可以在环境变量中指定选项。请注意,命令行上的选项会覆盖环境。
dobuild_file=./dobuild.yaml dobuild.yaml的路径
dobuild_registry=registry.example.com docker registry
dobuild_prefix=owner/helloworld container uri prefix
dobuild_push=true建筑