Git Product home page Git Product logo

docker-library-official-images's Introduction

Docker Official Images

Build Status

Contributing to the standard library

Thank you for your interest in the Docker official images project! We strive to make these instructions as simple and straightforward as possible, but if you find yourself lost, don't hesitate to seek us out on Freenode IRC in channel #docker-library, or by creating a GitHub issue here.

Be sure to familiarize yourself with the Guidelines for Creating and Documenting Official Repositories and the Best practices for writing Dockerfiles in the Docker documentation.

Also, the documentation for these images is currently stored separately in the docker-library/docs repository.

Library definition files

The library definition files are plain text files found in the library/ subfolder of the official-images repository.

File names

The name of a definition file will determine the name of the image(s) it creates. For example, the library/ubuntu file will create images in the <namespace>/ubuntu repository. If multiple instructions are present in a single file, all images are expected to be created under a different tag.

Instruction format

<docker-tag>: <git-url>@<git-commit-id>
2.2.0: git://github.com/dotcloud/docker-redis@a4bf8923ee4ec566d3ddc212

<docker-tag>: <git-url>@<git-tag>
2.4.0: git://github.com/dotcloud/[email protected]

<docker-tag>: <git-url>@<git-tag-or-commit-id> <dockerfile-dir>
2.5.1: git://github.com/dotcloud/[email protected] tools/dockerfiles/2.5.1

Stackbrew will fetch data from the provided git repository from the provided reference. Generated image will be tagged as <docker-tag>. If a git tag is removed and added to another commit, you should not expect the image to be rebuilt. Create a new tag and submit a pull request instead.

Optionally, if <dockerfile-dir> is present, Stackbrew will look for the Dockerfile inside the specified subdirectory instead of at the root (and <dockerfile-dir> will be used as the "context" for the build).

Creating a new repository

  • Create a new file in the library folder. Its name will be the name of your repository.
  • Add your tag definitions using the provided syntax (see above).
  • Add the following line to the top of the file: # maintainer: Your Name <[email protected]> (@github.name)
  • Create a pull request from your git repository to this one. Please be sure to add details as to what your repository does.

New tag in existing repository that you're the maintainer of

  • Add your tag definition using the instruction format documented above.
  • Create a pull request from your git repository to this one. Please be sure to add details about what's new, if possible.
  • In the pull request, mention the repository's maintainers using the @ symbol (found in the relevant MAINTAINERS file).

Change to an existing tag

  • Propose a pull request to the origin repository. Don't hesitate to @-mention one of the repository maintainers (found in the relevant MAINTAINERS file).

Bashbrew

Bashbrew is a set of bash scripts for cloning, building, tagging, and pushing the Docker official images. See README.md in the bashbrew/ subfolder for more information.

Stackbrew (deprecated)

Stackbrew is a web-application that performs continuous building of the Docker official images. See README.md in the stackbrew/ subfolder for more information.

docker-library-official-images's People

Contributors

adamjgray avatar alexkirsz avatar chaudum avatar cpuguy83 avatar daghack avatar directhex avatar dmp42 avatar dobe avatar dror-g avatar flavio avatar github-brice-jaglin avatar jperrin avatar jpetazzo avatar juanluisbaptiste avatar lotharsee avatar lsm5 avatar michaelneale avatar msbt avatar ndeloof avatar paultag avatar petermartini avatar prologic avatar quantisan avatar samalba avatar shin- avatar thresheek avatar tianon avatar yarikoptic avatar yosifkit avatar zhengyal avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.