Documentation for Docker Official Images in docker-library
Go to file
Joe Ferguson e8a0df65b1 Add test to ensure github-repo exists 2016-05-13 13:29:46 -07:00
.template-helpers Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
aerospike Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
alpine Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
arangodb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
backdrop Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
bonita Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
buildpack-deps Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
busybox Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
cassandra Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
celery Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
centos Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
chronograf Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
cirros Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
clojure Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
consul Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
couchbase Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
couchdb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
crate Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
crux Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
debian Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
django Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
docker Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
docker-dev Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
drupal Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
elasticsearch Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
elixir Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
erlang Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
fedora Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
gazebo Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
gcc Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ghost Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
glassfish Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
golang Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
haproxy Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
haskell Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
hello-world Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
hipache Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
httpd Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
hylang Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
influxdb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
iojs Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
irssi Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
java Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
jenkins Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
jetty Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
joomla Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
jruby Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
julia Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
kaazing-gateway Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
kapacitor Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
kibana Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
lightstreamer Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
logstash Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mageia Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mariadb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
maven Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
memcached Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mongo Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mongo-express Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mono Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
mysql Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
nats Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
neo4j Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
neurodebian Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
nginx Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
node Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
notary Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
nuxeo Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
odoo Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
opensuse Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
oraclelinux Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
orientdb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
owncloud Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
percona Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
perl Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
photon Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
php Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
php-zendserver Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
piwik Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
postgres Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
pypy Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
python Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
r-base Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
rabbitmq Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
rails Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
rakudo-star Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
redis Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
redmine Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
registry Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
rethinkdb Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
rocket.chat Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ros Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ruby Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
scratch Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
sentry Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
solr Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
sonarqube Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
sourcemage Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
swarm Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
telegraf Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
thrift Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
tomcat Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
tomee Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
traefik Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ubuntu Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ubuntu-debootstrap Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
ubuntu-upstart Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
websphere-liberty Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
wordpress Add github-repo file to every image repo 2016-05-12 16:33:19 -07:00
.dockerignore Add simple .dockerignore 2015-08-07 14:45:51 -07:00
.travis.yml Add test to ensure github-repo exists 2016-05-13 13:29:46 -07:00
Dockerfile Reorganize "push.pl" to put the "vimdiff" logic in one place for cool dispatch-conf-alike behavior 2015-04-20 11:04:27 -06:00
LICENSE 2015 2015-02-23 13:50:26 -07:00
README.md Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00
generate-repo-stub-readme.sh Fix typo in README.md 2016-04-26 17:28:20 -04:00
markdownfmt.sh Drop "-t" in markdownfmt.sh so we can redirect output 2015-02-27 17:41:32 -07:00
push.pl Handle completely uninitialized repo descriptions better by explicitly converting undef to "" (avoids warnings about "Use of uninitialized value $currentText") 2015-12-29 13:58:56 -08:00
push.sh Support non-tty mode in push.sh 2015-06-02 14:05:17 -07:00
update-tag-details.sh Remove bind mount in update-tag-details.sh 2015-12-11 12:43:22 -08:00
update.sh Remove mailing-list due to extra complexity 2016-05-12 16:52:58 -07:00

README.md

What is this?

This repository contains the docs for each of the Docker official images. See docker-library/official-images for the configuration how the images are built. To see all of the official images go to the hub.

All Markdown files here are run through tianon's fork of markdownfmt (only forked to add some smaller-diff preference and minor DockerHub-compatibility changes), and verified as formatted correctly via Travis-CI.

Build Status

How do I add a new image's docs

  • create a folder for my image: mkdir myimage
  • create a README-short.txt (required, 100 char max)
  • create a content.md (required)
  • create a license.md (required)
  • create a github-repo (required)
  • add a logo.png (recommended)

Optionally:

  • run ./update.sh myimage to generate myimage/README.md for your review. Note: do not actually commit the README.md file; it is automatically generated/committed before being uploaded to Docker Hub.
  • run ./markdownfmt.sh -l myimage to verify whether format of your markdown files is compliant to tianon/markdownfmt. In case you see any file names, markdownfmt detected some issues, which might result in a failed build during continuous integration. run ./markdownfmt.sh -d myimage to see a diff of changes required to pass.

How do I update an image's docs

To update README.md for a specific image do not edit README.md directly. Please edit content.md or another appropriate file within the folder. To see the changes, run ./update.sh myimage from the repo root, but do not add the README.md changes to your pull request. See also markdownfmt.sh point above.

What are all these files?

update.sh

This is the main script used to generate the README.md files for each image. The generated file is committed along with the files used to generate it (see below on what customizations are available). Accepted arguments are which image(s) you want to update or no arguments to update all of them.

generate-repo-stub-readme.sh

This is used to generate a simple README.md to put in the image's repo. Argument is the name of the image, like golang and it then outputs the readme to standard out.

push.pl

This is used by us to push the actual content of the READMEs to the Docker Hub as special access is required to modify the Hub description contents.

This script is used by update.sh to create the "Supported tags and respective Dockerfile links" section of each generated README.md from the information in the official-images library/ manifests.

.template-helpers/template.md and .template-helpers/user-feedback.md

These files are the templates used in building the <image name>/README.md file, in combination with the individual image's files.

folder <image name>

This is where all the partial and generated files for a given image reside, (ex: golang/).

<image name>/README.md

This file is generated using update.sh.

<image name>/content.md

This file contains the main content of your image's long description. The basic parts you should have are a "What Is" section and a "How To" section. See the doc on Official Repos for more information on long description. The issues and contribution section is generated by the script but can be overridden. The following is a basic layout:

# What is XYZ?

// about what the contained software is

%%LOGO%%

# How to use this image

// descriptions and examples of common use cases for the image
// make use of subsections as necessary

<image name>/README-short.txt

This is the short description for the docker hub, limited to 100 characters in a single line.

Go (golang) is a general purpose, higher-level, imperative programming language.

<image name>/logo.png

Logo for the contained software. While there are not hard rules on formatting, most existing logos are square or landscape and stay within a few hundred pixels of width.

<image name>/license.md

This file should contain a link to the license for the main software in the image. Here is an example for golang:

View [license information](http://golang.org/LICENSE) for the software contained in this image.

<image name>/github-repo

This file should contain the URL to the GitHub repository for the Dockerfiles that become the images. The file should be in a single line ending in a newline with no extraneous whitespace. Only one GitHub repo per image repository is supported. It is used in generating links. Here is an example for golang:

https://github.com/docker-library/golang

<image name>/user-feedback.md

This file is an optional override of the default user-feedback.md for those repositories with different issue and contributing policies.

Issues and Contributing

If you would like to make a new Official Image, be sure to follow the guidelines and optionally talk to officialrepos@docker.com.

Feel free to make a pull request for fixes and improvements to current documentation. For questions or problems on this repo come talk to us via the #docker-library IRC channel on Freenode or open up an issue.