NextCloud官方文档

Docker Library Bot dc7337e0e3 Run update.sh %!s(int64=3) %!d(string=hai) anos
.ci 896a221436 Fix dead link in CI %!s(int64=4) %!d(string=hai) anos
.common-templates 3052101e8f Fixed maintainer.md %!s(int64=7) %!d(string=hai) anos
.github 1724163962 Ensure exit code on git diff can cause failure as well %!s(int64=5) %!d(string=hai) anos
.template-helpers 75e940a14e Adjust variant-alpine wording %!s(int64=4) %!d(string=hai) anos
adminer 23a8dd5693 Run update.sh %!s(int64=3) %!d(string=hai) anos
aerospike 7d6cd187f2 Run update.sh %!s(int64=3) %!d(string=hai) anos
almalinux 32ca4a681d Run update.sh %!s(int64=3) %!d(string=hai) anos
alpine b654de7b79 Run update.sh %!s(int64=3) %!d(string=hai) anos
alt 1f3acbb8ee Run update.sh %!s(int64=4) %!d(string=hai) anos
amazoncorretto dc7337e0e3 Run update.sh %!s(int64=3) %!d(string=hai) anos
amazonlinux 14e85b8af2 Run update.sh %!s(int64=3) %!d(string=hai) anos
api-firewall b0e1971664 Run update.sh %!s(int64=3) %!d(string=hai) anos
arangodb e2ac90759c Run update.sh %!s(int64=3) %!d(string=hai) anos
archlinux 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
backdrop 96acc8e4bc Run update.sh %!s(int64=3) %!d(string=hai) anos
bash b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
bonita 0b63293e37 Run update.sh %!s(int64=3) %!d(string=hai) anos
buildpack-deps 197347a51b Run update.sh %!s(int64=3) %!d(string=hai) anos
busybox 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
caddy ef0832bb11 Run update.sh %!s(int64=3) %!d(string=hai) anos
cassandra ce69538c62 Run update.sh %!s(int64=3) %!d(string=hai) anos
centos ae27b80eae Run update.sh %!s(int64=3) %!d(string=hai) anos
chronograf 88aa3cd41f Run update.sh %!s(int64=3) %!d(string=hai) anos
cirros f810d150bd Run update.sh %!s(int64=4) %!d(string=hai) anos
clearlinux f19cb5816b Run update.sh %!s(int64=3) %!d(string=hai) anos
clefos 67262ed5c9 Run update.sh %!s(int64=5) %!d(string=hai) anos
clojure e4438f7fa2 Run update.sh %!s(int64=3) %!d(string=hai) anos
composer c5dba34830 Run update.sh %!s(int64=3) %!d(string=hai) anos
consul f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
convertigo db03d29e95 Run update.sh %!s(int64=3) %!d(string=hai) anos
couchbase 3e4e64339e Run update.sh %!s(int64=3) %!d(string=hai) anos
couchdb 95054d917a Run update.sh %!s(int64=3) %!d(string=hai) anos
crate dae30a288a Run update.sh %!s(int64=3) %!d(string=hai) anos
dart 5ac9eef713 Run update.sh %!s(int64=3) %!d(string=hai) anos
debian 10b1bf08fa Run update.sh %!s(int64=3) %!d(string=hai) anos
docker ce69538c62 Run update.sh %!s(int64=3) %!d(string=hai) anos
drupal 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
eclipse-mosquitto 165bf5ecbc Run update.sh %!s(int64=3) %!d(string=hai) anos
eclipse-temurin c5dba34830 Run update.sh %!s(int64=3) %!d(string=hai) anos
eggdrop ba49d51bee Run update.sh %!s(int64=3) %!d(string=hai) anos
elasticsearch f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
elixir a6e82d2ce4 Run update.sh %!s(int64=3) %!d(string=hai) anos
emqx d8e0fdc19a Run update.sh %!s(int64=3) %!d(string=hai) anos
erlang 70d39bd008 Run update.sh %!s(int64=3) %!d(string=hai) anos
express-gateway 69a816b854 Run update.sh %!s(int64=3) %!d(string=hai) anos
fedora 427b266bc0 Run update.sh %!s(int64=3) %!d(string=hai) anos
flink 377057e53e Run update.sh %!s(int64=3) %!d(string=hai) anos
fluentd 096dcf9c7e Run update.sh %!s(int64=4) %!d(string=hai) anos
friendica 5576b4bc17 Run update.sh %!s(int64=3) %!d(string=hai) anos
gazebo f19cb5816b Run update.sh %!s(int64=3) %!d(string=hai) anos
gcc 10b1bf08fa Run update.sh %!s(int64=3) %!d(string=hai) anos
geonetwork 81df7f7928 Run update.sh %!s(int64=3) %!d(string=hai) anos
ghost 71e0aa5c74 Run update.sh %!s(int64=3) %!d(string=hai) anos
golang 18dc36501a Run update.sh %!s(int64=3) %!d(string=hai) anos
gradle 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
groovy 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
haproxy 71e0aa5c74 Run update.sh %!s(int64=3) %!d(string=hai) anos
haskell e3564a1d79 Run update.sh %!s(int64=3) %!d(string=hai) anos
haxe 7dfde9f409 Run update.sh %!s(int64=3) %!d(string=hai) anos
hello-world eb9b687752 Run update.sh %!s(int64=3) %!d(string=hai) anos
hitch 0d9ba028ad Run update.sh %!s(int64=4) %!d(string=hai) anos
httpd b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
hylang 359967fb43 Run update.sh %!s(int64=3) %!d(string=hai) anos
ibm-semeru-runtimes ce69538c62 Run update.sh %!s(int64=3) %!d(string=hai) anos
ibmjava 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
influxdb b56d2dd13b Run update.sh %!s(int64=3) %!d(string=hai) anos
irssi 80505fc6f8 Run update.sh %!s(int64=3) %!d(string=hai) anos
jetty de80ab9fd3 Run update.sh %!s(int64=3) %!d(string=hai) anos
jobber 84b9039ee5 Run update.sh %!s(int64=3) %!d(string=hai) anos
joomla 7e3b24e968 Run update.sh %!s(int64=3) %!d(string=hai) anos
jruby 1ae583efbb Run update.sh %!s(int64=3) %!d(string=hai) anos
julia 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
kapacitor 88aa3cd41f Run update.sh %!s(int64=3) %!d(string=hai) anos
kibana f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
kong 79b8a1879e Run update.sh %!s(int64=3) %!d(string=hai) anos
lightstreamer 96acc8e4bc Run update.sh %!s(int64=3) %!d(string=hai) anos
logstash f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
mageia 3c139c17e9 Run update.sh %!s(int64=4) %!d(string=hai) anos
mariadb e2ac90759c Run update.sh %!s(int64=3) %!d(string=hai) anos
matomo 54eaa8f92e Run update.sh %!s(int64=3) %!d(string=hai) anos
maven ce69538c62 Run update.sh %!s(int64=3) %!d(string=hai) anos
mediawiki dc7337e0e3 Run update.sh %!s(int64=3) %!d(string=hai) anos
memcached b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
mongo 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
mongo-express 31356f0b7b Run update.sh %!s(int64=4) %!d(string=hai) anos
monica a550e2ef0d Run update.sh %!s(int64=4) %!d(string=hai) anos
mono 593ef36520 Run update.sh %!s(int64=3) %!d(string=hai) anos
mysql 902e1ceca8 Run update.sh %!s(int64=3) %!d(string=hai) anos
nats f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
nats-streaming 3e4e64339e Run update.sh %!s(int64=3) %!d(string=hai) anos
neo4j 5f3d524b54 Run update.sh %!s(int64=3) %!d(string=hai) anos
neurodebian ba49d51bee Run update.sh %!s(int64=3) %!d(string=hai) anos
nextcloud 5b62f63e8d Run update.sh %!s(int64=3) %!d(string=hai) anos
nginx 7dfde9f409 Run update.sh %!s(int64=3) %!d(string=hai) anos
node ff6b73968f Run update.sh %!s(int64=3) %!d(string=hai) anos
notary de5ecd834a Run update.sh %!s(int64=3) %!d(string=hai) anos
odoo a6e82d2ce4 Run update.sh %!s(int64=3) %!d(string=hai) anos
open-liberty 4739b80d11 Run update.sh %!s(int64=3) %!d(string=hai) anos
openjdk 10b1bf08fa Run update.sh %!s(int64=3) %!d(string=hai) anos
oraclelinux 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
orientdb c5dba34830 Run update.sh %!s(int64=3) %!d(string=hai) anos
percona 7dfde9f409 Run update.sh %!s(int64=3) %!d(string=hai) anos
perl f19cb5816b Run update.sh %!s(int64=3) %!d(string=hai) anos
photon 7e1460046f Run update.sh %!s(int64=3) %!d(string=hai) anos
php ce69538c62 Run update.sh %!s(int64=3) %!d(string=hai) anos
php-zendserver 26f73145bc Run update.sh %!s(int64=4) %!d(string=hai) anos
phpmyadmin 4e5604a443 Run update.sh %!s(int64=3) %!d(string=hai) anos
plone 72bdc231db Run update.sh %!s(int64=3) %!d(string=hai) anos
postfixadmin 64007c75b1 Run update.sh %!s(int64=3) %!d(string=hai) anos
postgres ebbf900b49 Run update.sh %!s(int64=3) %!d(string=hai) anos
pypy 6e8c989b1a Run update.sh %!s(int64=3) %!d(string=hai) anos
python 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
r-base 735735c4f9 Run update.sh %!s(int64=3) %!d(string=hai) anos
rabbitmq 0a0b047f1e Run update.sh %!s(int64=3) %!d(string=hai) anos
rakudo-star 914215501c Run update.sh %!s(int64=4) %!d(string=hai) anos
redis ebbf900b49 Run update.sh %!s(int64=3) %!d(string=hai) anos
redmine 4739b80d11 Run update.sh %!s(int64=3) %!d(string=hai) anos
registry c5dba34830 Run update.sh %!s(int64=3) %!d(string=hai) anos
rethinkdb e2ac90759c Run update.sh %!s(int64=3) %!d(string=hai) anos
rocket.chat 9af397827f Run update.sh %!s(int64=3) %!d(string=hai) anos
rockylinux 53f5f48f03 Run update.sh %!s(int64=3) %!d(string=hai) anos
ros f3f15dd468 Run update.sh %!s(int64=3) %!d(string=hai) anos
ruby ebbf900b49 Run update.sh %!s(int64=3) %!d(string=hai) anos
rust fd662978b8 Run update.sh %!s(int64=3) %!d(string=hai) anos
sapmachine fe6dc9bd4d Run update.sh %!s(int64=3) %!d(string=hai) anos
scratch d19b60ba76 Add a quote blurb from the upstream docs to the scratch description %!s(int64=8) %!d(string=hai) anos
silverpeas 9ff4fcfa98 Run update.sh %!s(int64=3) %!d(string=hai) anos
sl 2f842c4113 Run update.sh %!s(int64=3) %!d(string=hai) anos
solr bbf637a1ba Run update.sh %!s(int64=3) %!d(string=hai) anos
sonarqube 669ba82059 Run update.sh %!s(int64=3) %!d(string=hai) anos
spiped b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
storm 1ae583efbb Run update.sh %!s(int64=3) %!d(string=hai) anos
swift 0b63293e37 Run update.sh %!s(int64=3) %!d(string=hai) anos
swipl 370f8d04eb Run update.sh %!s(int64=3) %!d(string=hai) anos
teamspeak 447cce1e73 Run update.sh %!s(int64=4) %!d(string=hai) anos
telegraf 682aa2f21f Run update.sh %!s(int64=3) %!d(string=hai) anos
tomcat b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
tomee 84b45c2c15 Run update.sh %!s(int64=3) %!d(string=hai) anos
traefik b02a879b71 Run update.sh %!s(int64=3) %!d(string=hai) anos
ubuntu eb186afd7a Run update.sh %!s(int64=3) %!d(string=hai) anos
varnish a02eaf5804 Run update.sh %!s(int64=3) %!d(string=hai) anos
vault 61015da80e Run update.sh %!s(int64=3) %!d(string=hai) anos
websphere-liberty 4739b80d11 Run update.sh %!s(int64=3) %!d(string=hai) anos
wordpress 7dfde9f409 Run update.sh %!s(int64=3) %!d(string=hai) anos
xwiki 9494a34193 Run update.sh %!s(int64=3) %!d(string=hai) anos
yourls 1b3b511177 Run update.sh %!s(int64=3) %!d(string=hai) anos
znc 0db2cc08c9 Run update.sh %!s(int64=4) %!d(string=hai) anos
zookeeper d5a83e62f6 Run update.sh %!s(int64=3) %!d(string=hai) anos
.dockerignore 3eea3576df Add simple .dockerignore %!s(int64=10) %!d(string=hai) anos
Dockerfile 50326f312f Update to Mojolicious 8.35 %!s(int64=5) %!d(string=hai) anos
LICENSE ddc7ed7aea Remove ending year from LICENSE %!s(int64=7) %!d(string=hai) anos
README.md 5ca9707195 Fixed some capitalization and wording in README.md %!s(int64=3) %!d(string=hai) anos
generate-repo-stub-readme.sh d5df59ae28 Adjust repo stub disclaimer to exclude repos where it makes no sense %!s(int64=4) %!d(string=hai) anos
markdownfmt.sh 9efeec18b6 Add "ymlfmt" for enforcing consistent YAML whitespace %!s(int64=8) %!d(string=hai) anos
parallel-update.sh b3a7329ba4 Add "parallel update" script to generate multiple markdown files simultaneously %!s(int64=6) %!d(string=hai) anos
push.pl a79dd8a53a Add "description cut off" warning at end too %!s(int64=3) %!d(string=hai) anos
push.sh da98c367a9 Add logo pushing ability for library/ images! %!s(int64=6) %!d(string=hai) anos
update.sh 45bde4a931 Add more description around OpenJDK to make status more clear %!s(int64=3) %!d(string=hai) anos
ymlfmt.sh 9efeec18b6 Add "ymlfmt" for enforcing consistent YAML whitespace %!s(int64=8) %!d(string=hai) anos

README.md

What is this?

This repository contains the image documentation for each of the Docker Official Images. See docker-library/official-images for more information about the program in general.

All Markdown files here are run through tianon's fork of markdownfmt, and verified as formatted correctly via GitHub Actions.

  • GitHub CI status badge
  • library update.sh status badge
    • amd64 update.sh status badge
    • arm32v5 update.sh status badge
    • arm32v6 update.sh status badge
    • arm32v7 update.sh status badge
    • arm64v8 update.sh status badge
    • i386 update.sh status badge
    • ppc64le update.sh status badge
    • s390x update.sh status badge
    • windows-amd64 update.sh status badge

Table of Contents

  1. What is this?
    1. Table of Contents
  2. How do I update an image's docs
  3. How do I add a new image's docs
  4. Files related to an image's docs
    1. folder <image name>
    2. README.md
    3. content.md
    4. get-help.md
    5. github-repo
    6. license.md
    7. logo.png
    8. maintainer.md
    9. README-short.txt
    10. stack.yml
  5. Files for main Docs repo
    1. update.sh
    2. markdownfmt.sh and ymlfmt.sh
    3. .template-helpers/generate-dockerfile-links-partial.sh
    4. .template-helpers/
  6. Scripts unrelated to templates
    1. generate-repo-stub-readme.sh
    2. push.pl and push.sh
  7. Issues and Contributing

How do I update an image's docs

Edit the content.md for an image; not the README.md as it's auto-generated from the contents of the other files in that repo. To see the changes to the README.md, 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 below.

After opening your Pull Request the changes will be checked by an automated markdownfmt.sh before it can be merged. A common issue is incorrect spacing such as with two lines missing an empty line between them (double-spaced).

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 list any files that are non-compliant to tianon/markdownfmt.
    Any files in the list will 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.

Files related to an image's docs

folder <image name>

This is where all the partial (e.g. content.md) and generated files (e.g. README.md) for a given image reside, (e.g. golang/). It must match the name of the image used in docker-library/official-images.

README.md

This file is generated using update.sh. Do not commit or edit this file; it is regenerated periodically by a bot.

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

get-help.md

This file is an optional override of the default get-help.md. This is the content of the "Where to get help" part of the "Quick reference" at the top of the generated README. We recommend linking to the best places for community support like forums, chat rooms, or mailing lists.

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

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.

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. Alternatively, a logo.svg can be used instead, but only one logo file will apply. To use it within content.md, put %%LOGO%% as shown above in the basic content.md layout.

The image is automatically scaled to a 120 pixel square for the top of the Docker Hub page and Hub search results.

maintainer.md

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

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.

stack.yml

This optional file contains a small, working Compose file for Docker Swarm showing off how to use the image. To use the stack.yml, add %%STACK%% to the content.md and this will embed the YAML along with a link to directly try it in Play with Docker.

The file must work via docker stack deploy since that is how Play with Docker will launch it, but it is helpful for users to try locally if it works for docker-compose as well. Other official images may be referenced within the YAML to demonstrate the functionality of the image, but no images external to the Docker Official Images program may be referenced.

Files for main Docs repo

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

markdownfmt.sh and ymlfmt.sh

These two scripts are for verifying the formatting of Markdown (.md) and YAML (.yml) files, respectively. markdownfmt.sh uses the tianon/markdownfmt image and ymlfmt.sh uses the tianon/ymlfmt image.

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

The scripts and Markdown files in here are used in building an image's README.md file in combination with its individual files.

Scripts unrelated to templates

generate-repo-stub-readme.sh

This is used to generate a simple README.md to put in the image's repo. We use this in Git repositories within https://github.com/docker-library to simplify our maintenance, but it is not required for anyone else. The only argument is the name of the image (or repo), like golang and it then outputs the readme to standard out.

push.pl and push.sh

These are 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. The Dockerfile is used to create a suitable environment for push.pl.

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 Libera.Chat or open up an issue.