Skip to main content

A Buildout recipe to generate a Dockerfile for Birdhouse applications.

Project description

Travis Build

Introduction

birdhousebuilder.recipe.docker is a Buildout recipe to generate a Dockerfile for Birdhouse applications.

Usage

The recipe will generate a Dockerfile for your application. You can find the Dockerfile in the root folder of the application.

Supported options

This recipe supports the following options:

image-name

The docker base image name. Default is birdhouse/bird-base.

image-version

The docker base image version. Default is latest.

maintainer

The maintainer of the Dockerfile.

description

Description of the Dockerfile.

vendor

The vendor of the application. Default: Birdhouse

version

The version of the application. Default: 1.0.0

source

Location of the source folder copied into the image. This option is not used it git-url is present. Default is “.”.

git-url

GitHub URL pointing to the source repo. The sources are copied into the image. Default: None.

git-branch

Branch of the source repo on GitHub. Default: master.

subdir

The location of the buildout.cfg file used to build. Default: None.

buildout-cfg

Path to a local buildout.cfg which is copied into the sources. Default: None.

expose

List of exposed ports.

command

Command to start service. Default: make update-config update-user start

environment

List of key=value pairs added as ENV parameters in the Dockerfile.

settings

List of key=value pairs added to the buildout [settings] section of a custom.cfg used in the Dockerfile.

buildout-options

List of key=value pairs added to the [buildout] section of a custom.cfg used in the Dockerfile.

Example usage

The following example buildout.cfg generates a Dockerfile for Ubuntu 14.04:

[buildout]
parts = docker

[docker]
recipe = birdhousebuilder.recipe.docker
image-name = ubuntu
image-version = 14.04
maintainer = Birdhouse
description = My Birdhouse App
expose = 8090 8094
environment =
     OUTPUT_PORT=8090

Authors

Carsten Ehbrecht ehbrecht at dkrz.de

Changes

0.4.8 (2015-12-23)

  • update readme.

  • fixed settings and buildout-options.

0.4.7 (2015-12-23)

  • fixed /data volume permissions.

  • added update-user as default command.

  • add buildout-options for docker.cfg.

  • added default envs hostname and user.

0.4.6 (2015-12-22)

  • using only volume /data for /var/lib in Dockerfile.

0.4.5 (2015-12-17)

  • fixed command generation in Dockerfile.

0.4.4 (2015-12-16)

  • added command option.

  • custom.cfg for docker is copied to .docker.cfg.

  • added .dockerignore file.

0.4.3 (2015-12-15)

  • added settings option to generate a custom.cfg for docker image.

0.4.2 (2015-12-14)

  • added git-url, git-branch, subdir and buildout-cfg options.

0.4.1 (2015-12-10)

  • fixed setting of EXPOSE in Dockerfile.

0.4.0 (2015-12-10)

  • added environment and expose options.

  • enabled travis.

0.3.2 (2015-09-25)

  • fixed malleefowl default port in dockerfile template.

  • changed dockerfile volumes.

0.3.1 (2015-09-24)

  • updated Dockerfile template.

  • added output-port option.

0.3.0 (2015-09-22)

  • updated Dockerfile template.

  • more options added.

0.2.2 (2015-08-05)

  • cleaned up … removed conda dependency.

  • update to buildout 2.x.

0.2.1 (2015-04-13)

  • Updated Dockerfile template for CentOS builds (sudo was missing).

0.2.0 (2015-03-16)

  • Updated Dockerfile template for birdhouse environments.

0.1.1 (2014-11-13)

  • Updated Dockerfile template … starts only supervisord.

  • Fixed example in Readme.

0.1.0 (2014-11-05)

  • Initial Release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

birdhousebuilder.recipe.docker-0.4.8.tar.gz (10.0 kB view hashes)

Uploaded Source

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page