Documentation for Docker Official Images in docker-library
Shell Perl
Pull request Compare This branch is 68 commits behind docker-library:master.
Latest commit a5541cd Dec 21, 2016 @docker-library-bot docker-library-bot Run update.sh
Permalink
Failed to load latest commit information.
.template-helpers Move the "Documentation" section further down to hopefully help empha… Oct 14, 2016
aerospike Run update.sh Dec 16, 2016
alpine Run update.sh Dec 16, 2016
amazonlinux Run update.sh Dec 16, 2016
arangodb Run update.sh Dec 21, 2016
backdrop Run update.sh Dec 16, 2016
bash Run update.sh Dec 16, 2016
bonita Run update.sh Dec 16, 2016
buildpack-deps Run update.sh Dec 19, 2016
busybox Run update.sh Dec 16, 2016
cassandra Run update.sh Dec 16, 2016
celery Run update.sh Dec 19, 2016
centos Run update.sh Dec 16, 2016
chronograf Run update.sh Dec 16, 2016
cirros Run update.sh Dec 16, 2016
clearlinux Run update.sh Dec 16, 2016
clojure Run update.sh Dec 19, 2016
composer Run update.sh Dec 16, 2016
consul Run update.sh Dec 19, 2016
couchbase Run update.sh Dec 16, 2016
couchdb Run update.sh Dec 16, 2016
crate Run update.sh Dec 16, 2016
crux Run update.sh Dec 16, 2016
debian Run update.sh Dec 16, 2016
django Run update.sh Dec 16, 2016
docker Run update.sh Dec 19, 2016
drupal Run update.sh Dec 16, 2016
eclipse-mosquitto Run update.sh Dec 16, 2016
eggdrop Run update.sh Dec 19, 2016
elasticsearch Run update.sh Dec 20, 2016
elixir Run update.sh Dec 16, 2016
erlang Run update.sh Dec 16, 2016
fedora Run update.sh Dec 16, 2016
fsharp Run update.sh Dec 16, 2016
gazebo Run update.sh Dec 16, 2016
gcc Run update.sh Dec 16, 2016
ghost Run update.sh Dec 16, 2016
golang Run update.sh Dec 19, 2016
haproxy Run update.sh Dec 16, 2016
haskell Run update.sh Dec 16, 2016
hello-seattle Run update.sh Dec 16, 2016
hello-world Run update.sh Dec 16, 2016
hola-mundo Run update.sh Dec 16, 2016
httpd Run update.sh Dec 16, 2016
hylang Run update.sh Dec 16, 2016
ibmjava Run update.sh Dec 16, 2016
influxdb Run update.sh Dec 19, 2016
iojs Run update.sh Dec 16, 2016
irssi Run update.sh Dec 16, 2016
java Run update.sh Dec 19, 2016
jenkins Run update.sh Dec 16, 2016
jetty Run update.sh Dec 16, 2016
joomla Run update.sh Dec 16, 2016
jruby Run update.sh Dec 16, 2016
julia Run update.sh Dec 16, 2016
kaazing-gateway Run update.sh Dec 16, 2016
kapacitor Run update.sh Dec 16, 2016
kibana Run update.sh Dec 16, 2016
known Run update.sh Dec 16, 2016
kong Run update.sh Dec 16, 2016
lightstreamer Run update.sh Dec 16, 2016
logstash Run update.sh Dec 16, 2016
mageia Run update.sh Dec 16, 2016
mariadb Run update.sh Dec 19, 2016
maven Run update.sh Dec 16, 2016
memcached Run update.sh Dec 16, 2016
mongo-express Run update.sh Dec 16, 2016
mongo Run update.sh Dec 16, 2016
mono Run update.sh Dec 16, 2016
mysql Run update.sh Dec 16, 2016
nats-streaming Run update.sh Dec 21, 2016
nats Run update.sh Dec 16, 2016
neo4j Run update.sh Dec 16, 2016
neurodebian Run update.sh Dec 16, 2016
nginx Run update.sh Dec 20, 2016
node Run update.sh Dec 21, 2016
notary Run update.sh Dec 16, 2016
nuxeo Run update.sh Dec 16, 2016
odoo Run update.sh Dec 16, 2016
openjdk Run update.sh Dec 19, 2016
opensuse Run update.sh Dec 16, 2016
oraclelinux Run update.sh Nov 29, 2016
orientdb Run update.sh Dec 16, 2016
owncloud Run update.sh Dec 19, 2016
percona Run update.sh Dec 16, 2016
perl Run update.sh Dec 16, 2016
photon Run update.sh Dec 16, 2016
php-zendserver Run update.sh Dec 16, 2016
php Run update.sh Dec 19, 2016
piwik Run update.sh Dec 21, 2016
plone Run update.sh Dec 16, 2016
postgres Run update.sh Dec 16, 2016
pypy Run update.sh Dec 16, 2016
python Run update.sh Dec 19, 2016
r-base Run update.sh Dec 16, 2016
rabbitmq Run update.sh Dec 16, 2016
rails Run update.sh Dec 16, 2016
rakudo-star Run update.sh Dec 16, 2016
redis Run update.sh Dec 16, 2016
redmine Run update.sh Dec 19, 2016
registry Run update.sh Dec 21, 2016
rethinkdb Run update.sh Dec 16, 2016
rocket.chat Run update.sh Dec 16, 2016
ros Run update.sh Dec 16, 2016
ruby Run update.sh Dec 16, 2016
scratch Add github-repo file to every image repo May 12, 2016
sentry Run update.sh Dec 16, 2016
solr Run update.sh Dec 16, 2016
sonarqube Run update.sh Dec 16, 2016
sourcemage Run update.sh Dec 16, 2016
spiped Run update.sh Dec 16, 2016
storm Run update.sh Dec 16, 2016
swarm Run update.sh Dec 21, 2016
telegraf Run update.sh Dec 16, 2016
thrift Run update.sh Dec 16, 2016
tomcat Run update.sh Dec 16, 2016
tomee Run update.sh Dec 16, 2016
traefik Run update.sh Dec 16, 2016
ubuntu Run update.sh Dec 16, 2016
vault Run update.sh Dec 21, 2016
websphere-liberty Run update.sh Dec 21, 2016
wordpress Run update.sh Dec 16, 2016
zookeeper Run update.sh Dec 16, 2016
.dockerignore Add simple .dockerignore Aug 7, 2015
.travis.yml Add test to ensure github-repo exists May 13, 2016
Dockerfile Reorganize "push.pl" to put the "vimdiff" logic in one place for cool… Apr 20, 2015
LICENSE 2015 Feb 23, 2015
README.md Add note that "bashbrew" is required for running "update.sh" Oct 14, 2016
generate-repo-stub-readme.sh Add Jenkins "update.sh" badges to our docker-library repo README stub… Sep 20, 2016
markdownfmt.sh Drop "-t" in markdownfmt.sh so we can redirect output Feb 28, 2015
push.pl Handle completely uninitialized repo descriptions better by explicitl… Dec 29, 2015
push.sh Support non-tty mode in push.sh Jun 2, 2015
update.sh Remove mailing-list due to extra complexity May 12, 2016

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.

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 ./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.
  • run ./update.sh myimage to generate myimage/README.md for manual review of the generated copy.
    Note: do not actually commit the README.md file; it is automatically generated/committed before being uploaded to Docker Hub.

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.

This script assumes bashbrew is in your PATH (for scraping relevant tag information from the library manifest file for each repository).

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.

.template-helpers/generate-dockerfile-links-partial.sh

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.

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.