Documentation for Docker Official Images in docker-library
Go to file
Docker Library Bot 55ec23fa38 Run update.sh 2018-05-11 22:08:43 +00:00
.common-templates Refactor the way information (especially links) are presented 2017-04-21 17:48:19 -07:00
.template-helpers Add "git-prefetch" script to avoid errors like "fatal: Couldn't find remote ref refs/heads/centos-7armhfp" 2018-04-11 13:38:45 -07:00
.travis Add "license.md" to the list of files Travis verifies 2017-12-13 11:05:59 -08:00
adminer Run update.sh 2018-05-07 23:08:58 +00:00
aerospike Run update.sh 2018-05-03 22:09:11 +00:00
alpine Run update.sh 2018-01-09 13:10:21 -08:00
amazonlinux Run update.sh 2018-04-25 18:09:12 +00:00
arangodb Run update.sh 2018-05-03 22:09:11 +00:00
backdrop Run update.sh 2018-03-29 03:09:47 +00:00
bash Run update.sh 2018-02-09 00:08:56 +00:00
bonita Run update.sh 2018-04-04 15:08:53 +00:00
buildpack-deps Run update.sh 2018-05-04 18:10:04 +00:00
busybox Run update.sh 2018-04-04 20:08:54 +00:00
cassandra Run update.sh 2018-04-26 21:09:08 +00:00
centos Run update.sh 2018-05-07 21:09:22 +00:00
chronograf Run update.sh 2018-05-03 22:09:11 +00:00
cirros Run update.sh 2017-12-12 12:09:37 -08:00
clearlinux Run update.sh 2018-03-06 20:09:46 +00:00
clefos Run update.sh 2018-01-22 16:17:41 -08:00
clojure Run update.sh 2018-04-23 20:09:24 +00:00
composer Run update.sh 2018-05-07 21:09:22 +00:00
consul Run update.sh 2018-05-11 22:08:43 +00:00
convertigo Run update.sh 2018-03-23 16:09:34 +00:00
couchbase Run update.sh 2018-04-13 18:10:10 +00:00
couchdb Run update.sh 2017-12-21 19:09:12 +00:00
crate Run update.sh 2018-05-04 18:10:04 +00:00
crux Run update.sh 2017-11-02 20:31:33 +00:00
debian Run update.sh 2018-04-27 21:08:50 +00:00
docker Run update.sh 2018-05-10 19:09:10 +00:00
drupal Run update.sh 2018-05-08 20:08:57 +00:00
eclipse-mosquitto Run update.sh 2017-11-02 20:31:33 +00:00
eggdrop Run update.sh 2018-02-09 20:09:03 +00:00
elasticsearch Run update.sh 2018-04-19 17:09:07 +00:00
elixir Run update.sh 2018-05-09 17:09:42 +00:00
erlang Run update.sh 2018-05-10 18:08:47 +00:00
euleros Run update.sh 2017-11-15 18:31:58 +00:00
fedora Run update.sh 2018-05-11 22:08:43 +00:00
flink Run update.sh 2018-03-21 19:09:32 +00:00
fsharp Run update.sh 2018-05-04 18:10:04 +00:00
gazebo Run update.sh 2018-04-16 21:09:17 +00:00
gcc Run update.sh 2018-05-04 18:10:04 +00:00
geonetwork Run update.sh 2018-05-09 18:08:45 +00:00
ghost Run update.sh 2018-05-10 19:09:10 +00:00
golang Run update.sh 2018-05-03 22:09:11 +00:00
gradle Run update.sh 2018-05-11 18:09:25 +00:00
groovy Run update.sh 2018-05-08 18:09:06 +00:00
haproxy Run update.sh 2018-05-04 18:10:04 +00:00
haskell Run update.sh 2017-11-02 20:31:33 +00:00
haxe Run update.sh 2018-02-26 19:09:27 +00:00
hello-seattle Run update.sh 2018-04-11 17:08:56 +00:00
hello-world Run update.sh 2018-04-11 19:08:40 +00:00
hola-mundo Run update.sh 2018-04-11 17:08:56 +00:00
httpd Run update.sh 2018-04-24 00:08:50 +00:00
hylang Run update.sh 2018-01-02 22:08:48 +00:00
ibmjava Run update.sh 2018-05-11 18:09:25 +00:00
influxdb Run update.sh 2018-04-13 21:08:58 +00:00
irssi Run update.sh 2018-04-24 00:08:50 +00:00
jenkins Run update.sh 2017-11-02 20:31:33 +00:00
jetty Run update.sh 2018-03-21 19:09:32 +00:00
joomla Run update.sh 2018-04-20 17:09:15 +00:00
jruby Run update.sh 2018-04-23 22:09:00 +00:00
julia Run update.sh 2018-05-10 19:09:10 +00:00
kaazing-gateway Run update.sh 2017-11-02 20:31:33 +00:00
kapacitor Run update.sh 2018-03-15 18:08:54 +00:00
kibana Run update.sh 2018-04-19 17:09:07 +00:00
known Run update.sh 2017-11-02 20:31:33 +00:00
kong Run update.sh 2018-04-25 18:09:12 +00:00
lightstreamer Run update.sh 2018-03-02 22:09:12 +00:00
logstash Run update.sh 2018-04-19 17:09:07 +00:00
mageia Run update.sh 2018-04-26 18:09:37 +00:00
mariadb Run update.sh 2018-05-10 19:09:10 +00:00
matomo Run update.sh 2018-04-26 21:09:08 +00:00
maven Run update.sh 2018-04-20 17:09:15 +00:00
mediawiki Run update.sh 2018-03-13 22:08:50 +00:00
memcached Run update.sh 2018-03-30 16:09:31 +00:00
mongo Run update.sh 2018-05-10 19:09:10 +00:00
mongo-express Run update.sh 2018-03-07 00:09:18 +00:00
mono Run update.sh 2018-03-19 20:08:38 +00:00
mysql Run update.sh 2018-05-08 00:08:55 +00:00
nats Run update.sh 2018-05-02 18:08:37 +00:00
nats-streaming Run update.sh 2018-05-02 18:08:37 +00:00
neo4j Run update.sh 2018-04-24 19:09:04 +00:00
neurodebian Run update.sh 2018-01-24 13:08:56 -08:00
nextcloud Run update.sh 2018-05-10 18:08:47 +00:00
nginx Run update.sh 2018-05-08 18:09:06 +00:00
node Run update.sh 2018-05-11 18:09:25 +00:00
notary Run update.sh 2017-11-02 20:31:33 +00:00
nuxeo Run update.sh 2018-03-27 17:09:06 +00:00
odoo Run update.sh 2018-01-22 19:51:32 +00:00
open-liberty Run update.sh 2018-04-06 22:08:40 +00:00
openjdk Run update.sh 2018-05-09 17:09:42 +00:00
opensuse Run update.sh 2018-04-20 17:09:15 +00:00
oraclelinux Run update.sh 2018-05-07 21:09:22 +00:00
orientdb Run update.sh 2018-05-11 18:09:25 +00:00
owncloud Run update.sh 2018-05-08 20:08:57 +00:00
percona Run update.sh 2018-04-26 21:09:08 +00:00
perl Run update.sh 2018-04-19 19:08:49 +00:00
photon Run update.sh 2018-05-03 22:09:11 +00:00
php Run update.sh 2018-05-08 20:08:57 +00:00
php-zendserver Run update.sh 2018-05-04 18:10:04 +00:00
piwik Run update.sh 2018-04-26 21:09:08 +00:00
plone Run update.sh 2018-05-10 18:08:47 +00:00
postgres Run update.sh 2018-05-09 17:09:42 +00:00
pypy Run update.sh 2018-05-04 18:10:04 +00:00
python Run update.sh 2018-05-04 18:10:04 +00:00
r-base Run update.sh 2018-05-02 17:09:17 +00:00
rabbitmq Run update.sh 2018-05-10 19:09:10 +00:00
rakudo-star Run update.sh 2018-01-31 01:09:05 +00:00
rapidoid Run update.sh 2017-11-02 20:31:33 +00:00
redis Run update.sh 2018-03-27 18:09:50 +00:00
redmine Run update.sh 2018-05-10 19:09:10 +00:00
registry Run update.sh 2017-12-12 12:09:37 -08:00
rethinkdb Run update.sh 2017-11-02 20:31:33 +00:00
rocket.chat Run update.sh 2018-05-04 18:10:04 +00:00
ros Run update.sh 2018-04-27 20:09:20 +00:00
ruby Run update.sh 2018-05-04 18:10:04 +00:00
rust Run update.sh 2018-05-11 18:09:25 +00:00
scratch Add a quote blurb from the upstream docs to the scratch description 2017-07-03 10:57:26 -07:00
sentry Run update.sh 2017-11-20 11:09:09 -08:00
silverpeas Run update.sh 2018-02-05 16:10:01 -08:00
sl Run update.sh 2018-05-10 18:08:47 +00:00
solr Run update.sh 2018-04-13 18:10:10 +00:00
sonarqube Run update.sh 2018-04-18 18:09:26 +00:00
sourcemage Run update.sh 2017-11-02 20:31:33 +00:00
spiped Run update.sh 2018-03-15 22:09:11 +00:00
storm Run update.sh 2018-02-23 18:09:37 +00:00
swarm Run update.sh 2017-11-02 20:31:33 +00:00
swift Run update.sh 2018-04-06 18:10:48 +00:00
swipl Run update.sh 2018-05-03 22:09:11 +00:00
teamspeak Run update.sh 2018-05-02 18:08:37 +00:00
telegraf Run update.sh 2018-05-09 17:09:42 +00:00
thrift Run update.sh 2018-02-20 03:09:12 +00:00
tomcat Run update.sh 2018-05-10 19:09:10 +00:00
tomee Run update.sh 2017-12-13 17:08:57 +00:00
traefik Run update.sh 2018-05-03 21:09:00 +00:00
ubuntu Run update.sh 2018-04-30 22:08:43 +00:00
vault Run update.sh 2018-04-27 18:09:05 +00:00
websphere-liberty Run update.sh 2018-05-11 18:09:25 +00:00
wordpress Run update.sh 2018-05-08 20:08:57 +00:00
xwiki Run update.sh 2018-04-23 21:09:18 +00:00
znc Run update.sh 2018-05-03 22:09:11 +00:00
zookeeper Run update.sh 2018-05-09 17:09:42 +00:00
.dockerignore Add simple .dockerignore 2015-08-07 14:45:51 -07:00
.travis.yml Add "ymlfmt" for enforcing consistent YAML whitespace 2017-11-28 14:11:06 -08: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 Add autogenerated Table of Contents 2018-02-27 11:15:20 -08:00
generate-repo-stub-readme.sh Add per-arch build-status badges 2018-04-13 13:37:20 -07:00
markdownfmt.sh Add "ymlfmt" for enforcing consistent YAML whitespace 2017-11-28 14:11:06 -08:00
push.pl Add "--namespace" to push.pl 2017-11-16 16:17:03 -08:00
push.sh Support non-tty mode in push.sh 2015-06-02 14:05:17 -07:00
update.sh Add "git-prefetch" script to avoid errors like "fatal: Couldn't find remote ref refs/heads/centos-7armhfp" 2018-04-11 13:38:45 -07:00
ymlfmt.sh Add "ymlfmt" for enforcing consistent YAML whitespace 2017-11-28 14:11:06 -08: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.

Table of Contents

  1. What is this?
    1. Table of Contents
  2. How do I add a new image's docs
  3. How do I update an image's docs
  4. What are all these files?
    1. update.sh
    2. generate-repo-stub-readme.sh
    3. push.pl
    4. .template-helpers/generate-dockerfile-links-partial.sh
    5. .template-helpers/template.md and .template-helpers/user-feedback.md
    6. folder <image name>
    7. <image name>/README.md
    8. <image name>/content.md
    9. <image name>/README-short.txt
    10. <image name>/logo.png
    11. <image name>/license.md
    12. <image name>/maintainer.md
    13. <image name>/github-repo
    14. <image name>/user-feedback.md
  5. Issues and Contributing

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 maintainer.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.

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>/maintainer.md

This file should contain a link to the maintainers of the Dockerfile.

<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.