diff --git a/adminer/README.md b/adminer/README.md index 64c1197cc231..2d15041eaf07 100644 --- a/adminer/README.md +++ b/adminer/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `adminer` official image](https://hub.docker.com/_/adminer) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -66,7 +68,7 @@ Adminer (formerly phpMinAdmin) is a full-featured database management tool writt ### Standalone ```console -$ docker run --link some_database:db -p 8080:8080 adminer +$ docker run --link some_database:db -p 8080:8080 amd64/adminer ``` Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your browser. @@ -76,7 +78,7 @@ Then you can hit `http://localhost:8080` or `http://host-ip:8080` in your browse If you are already running a FastCGI capable web server you might prefer running Adminer via FastCGI: ```console -$ docker run --link some_database:db -p 9000:9000 adminer:fastcgi +$ docker run --link some_database:db -p 9000:9000 amd64/adminer:fastcgi ``` Then point your web server to port 9000 of the container. @@ -114,13 +116,13 @@ This image bundles all official Adminer plugins. You can find the list of plugin To load plugins you can pass a list of filenames in `ADMINER_PLUGINS`: ```console -$ docker run --link some_database:db -p 8080:8080 -e ADMINER_PLUGINS='tables-filter tinymce' adminer +$ docker run --link some_database:db -p 8080:8080 -e ADMINER_PLUGINS='tables-filter tinymce' amd64/adminer ``` If a plugin *requires* parameters to work correctly instead of adding the plugin to `ADMINER_PLUGINS`, you need to add a custom file to the container: ```console -$ docker run --link some_database:db -p 8080:8080 -e ADMINER_PLUGINS='login-servers' adminer +$ docker run --link some_database:db -p 8080:8080 -e ADMINER_PLUGINS='login-servers' amd64/adminer Unable to load plugin file "login-servers", because it has required parameters: servers Create a file "/var/www/html/plugins-enabled/login-servers.php" with the following contents to load the plugin: @@ -146,7 +148,7 @@ The image bundles all the designs that are available in the source package of ad To use a bundled design you can pass its name in `ADMINER_DESIGN`: ```console -$ docker run --link some_database:db -p 8080:8080 -e ADMINER_DESIGN='nette' adminer +$ docker run --link some_database:db -p 8080:8080 -e ADMINER_DESIGN='nette' amd64/adminer ``` To use a custom design you can add a file called `/var/www/html/adminer.css`. @@ -156,7 +158,7 @@ To use a custom design you can add a file called `/var/www/html/adminer.css`. You can specify the default host with the `ADMINER_DEFAULT_SERVER` environment variable. This is useful if you are connecting to an external server or a docker container named something other than the default `db`. ```console -docker run -p 8080:8080 -e ADMINER_DEFAULT_SERVER=mysql adminer +docker run -p 8080:8080 -e ADMINER_DEFAULT_SERVER=mysql amd64/adminer ``` ## Supported Drivers diff --git a/aerospike/README.md b/aerospike/README.md index 62767a7002d6..47e18fc72c4b 100644 --- a/aerospike/README.md +++ b/aerospike/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `aerospike` official image](https://hub.docker.com/_/aerospike) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -66,7 +68,7 @@ Aerospike Community Edition supports the same developer APIs as Aerospike Enterp ### Running an Aerospike EE node with a feature key file in a mapped directory ```console -docker run -d -v DIR:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" --name aerospike -p 3000-3002:3000-3002 aerospike:ee-[version] +docker run -d -v DIR:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ee-[version] ``` Above, *DIR* is a directory on your machine where you drop your feature key file. Make sure Docker Desktop has file sharing permission to bind mount it into Docker containers. @@ -75,13 +77,13 @@ Above, *DIR* is a directory on your machine where you drop your feature key file ```console FEATKEY=$(base64 ~/Desktop/evaluation-features.conf) -docker run -d -e "FEATURES=$FEATKEY" -e "FEATURE_KEY_FILE=env-b64:FEATURES" --name aerospike -p 3000-3002:3000-3002 aerospike:ee-[version] +docker run -d -e "FEATURES=$FEATKEY" -e "FEATURE_KEY_FILE=env-b64:FEATURES" --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ee-[version] ``` ### Running an Aerospike CE node ```console -docker run -d --name aerospike -p 3000-3002:3000-3002 aerospike:ce-[version] +docker run -d --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ce-[version] ``` ## Advanced Configuration @@ -97,7 +99,7 @@ You can inject parameters into the configuration template using container-side e For example, to set the default [namespace](https://www.aerospike.com/docs/architecture/data-model.html) name to *demo*: ```console -docker run -d --name aerospike -e "NAMESPACE=demo" -p 3000-3002:3000-3002 -v /my/dir:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" aerospike:ee-[version] +docker run -d --name aerospike -e "NAMESPACE=demo" -p 3000-3002:3000-3002 -v /my/dir:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" amd64/aerospike:ee-[version] ``` Injecting configuration parameters into the configuration template isn't compatible with using a custom configuration file. You can use one or the other. @@ -132,7 +134,7 @@ You should first `-v` map a local directory, which Docker will bind mount. Next, For example: ```console -docker run -d -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf +docker run -d -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf ``` ### Persistent Data Directory @@ -142,7 +144,7 @@ With Docker, the files within the container are not persisted past the life of t For example: ```console -docker run -d -v /opt/aerospike/data:/opt/aerospike/data -v /opt/aerospike/etc:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" aerospike:ee-[version] +docker run -d -v /opt/aerospike/data:/opt/aerospike/data -v /opt/aerospike/etc:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" amd64/aerospike:ee-[version] ``` The example above uses the configuration template, where the single defined namespace is in-memory with file-based persistence. Just mounting the predefined /opt/aerospike/data directory enables the data to be persisted on the host. @@ -161,7 +163,7 @@ Alternatively, a custom configuration file is used with the parameter `file` set In this example we also mount the data directory in a similar way, using a custom configuration file. ```console -docker run -d -v /opt/aerospike/data:/opt/aerospike/data -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf +docker run -d -v /opt/aerospike/data:/opt/aerospike/data -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf ``` ### Block Storage @@ -181,7 +183,7 @@ Update the `storage-engine device` section of the namespace in the custom aerosp Now to map a host drive /dev/sdc to /dev/xvdc on a container ```console -docker run -d --device '/dev/sdc:/dev/xvdc' -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf +docker run -d --device '/dev/sdc:/dev/xvdc' -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 amd64/aerospike:ee-[version] --config-file /opt/aerospike/etc/aerospike.conf ``` ### Persistent Lua Cache @@ -189,7 +191,7 @@ docker run -d --device '/dev/sdc:/dev/xvdc' -v /opt/aerospike/etc/:/opt/aerospik Upon restart, your lua cache will become emptied. To persist the cache, you will want to mount a directory from the host to the container's `/opt/aerospike/usr/udf/lua` using the `-v` option: ```sh -docker run -d -v /opt/aerospike/lua:/opt/aerospike/usr/udf/lua -v /opt/aerospike/data:/opt/aerospike/data --name aerospike -p 3000-3002:3000-3002 -e "FEATURE_KEY_FILE=/opt/etc/aerospike/features.conf" aerospike:ee-[version] +docker run -d -v /opt/aerospike/lua:/opt/aerospike/usr/udf/lua -v /opt/aerospike/data:/opt/aerospike/data --name aerospike -p 3000-3002:3000-3002 -e "FEATURE_KEY_FILE=/opt/etc/aerospike/features.conf" amd64/aerospike:ee-[version] ``` ## Clustering diff --git a/almalinux/README.md b/almalinux/README.md index e3bd9178a6fe..df909718b509 100644 --- a/almalinux/README.md +++ b/almalinux/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `almalinux` official image](https://hub.docker.com/_/almalinux) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -71,13 +73,13 @@ WARNING: The default (platform) image is a general-purpose image with a full DNF stack and basic tools like find, tar, vi, etc. -The `almalinux:latest` tag will always point to the latest stable release of the default image. Major releases and minor releases are also tagged with their version (e.g. `almalinux:8` or `almalinux:8.4`). +The `amd64/almalinux:latest` tag will always point to the latest stable release of the default image. Major releases and minor releases are also tagged with their version (e.g. `amd64/almalinux:8` or `amd64/almalinux:8.4`). ## Minimal image The minimal image is a stripped-down image that uses the microdnf package manager and contains a very limited package set. It is designed for applications that come with their own dependencies bundled (e.g. NodeJS, Python). -The `almalinux:minimal` tag always points to the most recent version of the minimal image. Tags for major (e.g. `almalinux:8-minimal`) and minor (e.g. `almalinux:8.4-minimal`) releases are also available. +The `amd64/almalinux:minimal` tag always points to the most recent version of the minimal image. Tags for major (e.g. `amd64/almalinux:8-minimal`) and minor (e.g. `amd64/almalinux:8.4-minimal`) releases are also available. ### Upgrade policy diff --git a/alpine/README.md b/alpine/README.md index b0e2f8e41b9f..4a47bc54f3d3 100644 --- a/alpine/README.md +++ b/alpine/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `alpine` official image](https://hub.docker.com/_/alpine) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -66,7 +68,7 @@ WARNING: Use like you would any other base image: ```dockerfile -FROM alpine:3.14 +FROM amd64/alpine:3.14 RUN apk add --no-cache mysql-client ENTRYPOINT ["mysql"] ``` diff --git a/alt/README.md b/alt/README.md index 9ef377cc7f2e..717d627e242a 100644 --- a/alt/README.md +++ b/alt/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `alt` official image](https://hub.docker.com/_/alt) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -73,7 +75,7 @@ As said above, Sisyphus is a frequently updated repository mainly designed for d # About this image -The `alt:latest` tag will always point the latest stable release (which is, at the time of this writing, `alt:p9`). +The `amd64/alt:latest` tag will always point the latest stable release (which is, at the time of this writing, `amd64/alt:p9`). ## How It's Made diff --git a/amazoncorretto/README.md b/amazoncorretto/README.md index 9e9a7b7392f5..be5d18d901f3 100644 --- a/amazoncorretto/README.md +++ b/amazoncorretto/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `amazoncorretto` official image](https://hub.docker.com/_/amazoncorretto) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -171,13 +173,13 @@ Note that there are multiple reasons why a CVE may appear to be present in a doc # Image Variants -The `amazoncorretto` images come in many flavors, each designed for a specific use case. +The `amd64/amazoncorretto` images come in many flavors, each designed for a specific use case. -## `amazoncorretto:` +## `amd64/amazoncorretto:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `amazoncorretto:-alpine` +## `amd64/amazoncorretto:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/amazonlinux/README.md b/amazonlinux/README.md index 1789092dde3b..eeecfaa4b0db 100644 --- a/amazonlinux/README.md +++ b/amazonlinux/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `amazonlinux` official image](https://hub.docker.com/_/amazonlinux) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/api-firewall/README.md b/api-firewall/README.md index 4828d9dc2aef..e6194fea38de 100644 --- a/api-firewall/README.md +++ b/api-firewall/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `api-firewall` official image](https://hub.docker.com/_/api-firewall) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/arangodb/README.md b/arangodb/README.md index a3fd8b4a815c..35f7edf6e0cd 100644 --- a/arangodb/README.md +++ b/arangodb/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `arangodb` official image](https://hub.docker.com/_/arangodb) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -77,16 +79,16 @@ ArangoDB runs everywhere: On-prem, in the cloud, and as a managed cloud service: In order to start an ArangoDB instance, run: ```console -docker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance arangodb +docker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance amd64/arangodb ``` Docker chooses the processor architecture for the image that matches your host CPU by default. If this is not the case, for example, because you have the `DOCKER_DEFAULT_PLATFORM` environment variable set to a different architecture, you can pass the `--platform` flag to the `docker run` command to specify the appropriate operating system and architecture for the container. For x86-64, use `linux/amd64`. On ARM, especially Apple silicon with no emulation for the required AVX instruction set extension, use `linux/arm64/v8`: ```console -docker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance --platform linux/arm64/v8 arangodb +docker run -d -p 8529:8529 -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name arangodb-instance --platform linux/arm64/v8 amd64/arangodb ``` -This creates and launches the arangodb Docker instance as a background process. The Identifier of the process is printed. By default, ArangoDB listens on port `8529` for requests. +This creates and launches the amd64/arangodb Docker instance as a background process. The Identifier of the process is printed. By default, ArangoDB listens on port `8529` for requests. In order to get the IP ArangoDB listens on, run: @@ -102,7 +104,7 @@ When using Docker, you need to specify the language you want to initialize the s - Use an `arangod.conf` configuration file that sets a language and mount it into the container. For example, create a configuration file on your host system in which you set `icu-language = sv` at the top (before any `[section]`) and then mount the file over the default configuration file like `docker run -v /your-host-path/arangod.conf:/etc/arangodb3/arangod.conf ...`. -Note that you cannot set the language using only a startup option on the command-line, like `docker run ... arangodb --icu-language sv`. +Note that you cannot set the language using only a startup option on the command-line, like `docker run ... amd64/arangodb --icu-language sv`. If you don't specify a language explicitly, the default is `en_US` up to ArangoDB v3.11 and `en_US_POSIX` from ArangoDB v3.12 onward. @@ -111,7 +113,7 @@ If you don't specify a language explicitly, the default is `en_US` up to ArangoD To use the running instance from an application, link the container: ```console -docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name my-app --link arangodb-instance:db-link arangodb +docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 --name my-app --link arangodb-instance:db-link amd64/arangodb ``` This uses the instance named `arangodb-instance` and links it into the application container. The application container contains environment variables, which can be used to access the database. @@ -127,7 +129,7 @@ This uses the instance named `arangodb-instance` and links it into the applicati If you want to expose the port to the outside world, run: ```console -docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 -p 8529:8529 -d arangodb +docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 -p 8529:8529 -d amd64/arangodb ``` ArangoDB listen on port 8529 for request and the image includes `EXPOSE @@ -158,7 +160,7 @@ Note: this way of specifying logins only applies to single server installations. You can pass arguments to the ArangoDB server by appending them to the end of the Docker command: ```console -docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 arangodb --help +docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 amd64/arangodb --help ``` The entrypoint script starts the `arangod` binary by default and forwards your arguments. @@ -166,7 +168,7 @@ The entrypoint script starts the `arangod` binary by default and forwards your a You may also start other binaries, such as the ArangoShell: ```console -docker run -it arangodb arangosh --server.database myDB ... +docker run -it amd64/arangodb arangosh --server.database myDB ... ``` Note that you need to set up networking for containers if `arangod` runs in one container and you want to access it with `arangosh` running in another container. It is easier to execute it in the same container instead. Use `docker ps` to find out the container ID / name of a running container: @@ -219,7 +221,7 @@ ArangoDB supports two different storage engines from version 3.2 to 3.6. You can ArangoDB uses the volume `/var/lib/arangodb3` as database directory to store the collection data and the volume `/var/lib/arangodb3-apps` as apps directory to store any extensions. These directories are marked as docker volumes. -See `docker inspect --format "{{ .Config.Volumes }}" arangodb` for all volumes. +See `docker inspect --format "{{ .Config.Volumes }}" amd64/arangodb` for all volumes. A good explanation about persistence and docker container can be found here: [Docker In-depth: Volumes](http://container42.com/2014/11/03/docker-indepth-volumes/), [Why Docker Data Containers are Good](https://medium.com/@ramangupta/why-docker-data-containers-are-good-589b3c6c749e) @@ -231,7 +233,7 @@ You can map the container's volumes to a directory on the host, so that the data unix> mkdir /tmp/arangodb unix> docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 -p 8529:8529 -d \ -v /tmp/arangodb:/var/lib/arangodb3 \ - arangodb + amd64/arangodb ``` This will use the `/tmp/arangodb` directory of the host as database directory for ArangoDB inside the container. @@ -241,13 +243,13 @@ This will use the `/tmp/arangodb` directory of the host as database directory fo Alternatively you can create a container holding the data. ```console -docker create --name arangodb-persist arangodb true +docker create --name arangodb-persist amd64/arangodb true ``` And use this data container in your ArangoDB container. ```console -docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 --volumes-from arangodb-persist -p 8529:8529 arangodb +docker run -e ARANGO_RANDOM_ROOT_PASSWORD=1 --volumes-from arangodb-persist -p 8529:8529 amd64/arangodb ``` If want to save a few bytes you can alternatively use [busybox](https://hub.docker.com/_/busybox) or [alpine](https://hub.docker.com/_/alpine) for creating the volume only containers. Please note that you need to provide the used volumes in this case. For example diff --git a/archlinux/README.md b/archlinux/README.md index c72b8eb0d01f..b52fc591ab03 100644 --- a/archlinux/README.md +++ b/archlinux/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `archlinux` official image](https://hub.docker.com/_/archlinux) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -61,7 +63,7 @@ Our strong community is diverse and helpful, and we pride ourselves on the range # About this image -The root filesystem tarball for this image is auto-generated weekly at 00:00 UTC on Sunday in Arch Linux infrastructure. Given the rolling-release nature of Arch Linux, images are tagged with the included meta package and the timestamp of the date they were generated. For example, `archlinux:base-20201101.0.7893` was generated the First of November 2020 in [CI job #7893](https://gitlab.archlinux.org/archlinux/archlinux-docker/-/jobs/7893). The `latest` tag will always match the latest `base` tag. +The root filesystem tarball for this image is auto-generated weekly at 00:00 UTC on Sunday in Arch Linux infrastructure. Given the rolling-release nature of Arch Linux, images are tagged with the included meta package and the timestamp of the date they were generated. For example, `amd64/archlinux:base-20201101.0.7893` was generated the First of November 2020 in [CI job #7893](https://gitlab.archlinux.org/archlinux/archlinux-docker/-/jobs/7893). The `latest` tag will always match the latest `base` tag. Besides `base` we also provide images for the `base-devel` and `multilib-devel` meta packages. diff --git a/backdrop/README.md b/backdrop/README.md index 4821ee51609b..1ffe877b44ed 100644 --- a/backdrop/README.md +++ b/backdrop/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `backdrop` official image](https://hub.docker.com/_/backdrop) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -60,7 +62,7 @@ Backdrop CMS enables people to build highly customized websites, affordably, thr The basic pattern for starting a `backdrop` instance is: ```console -$ docker run --name some-backdrop --link some-mysql:mysql -d backdrop +$ docker run --name some-backdrop --link some-mysql:mysql -d amd64/backdrop ``` The following environment variables are also honored for configuring your Backdrop CMS instance: @@ -77,7 +79,7 @@ The `BACKDROP_DB_NAME` **must already exist** on the given MySQL server. Check o If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used: ```console -$ docker run --name some-backdrop --link some-mysql:mysql -p 8080:80 -d backdrop +$ docker run --name some-backdrop --link some-mysql:mysql -p 8080:80 -d amd64/backdrop ``` Then, access it via `http://localhost:8080` or `http://host-ip:8080` in a browser. diff --git a/bash/README.md b/bash/README.md index de73fe3225ad..65911b1716f5 100644 --- a/bash/README.md +++ b/bash/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `bash` official image](https://hub.docker.com/_/bash) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -92,7 +94,7 @@ There are a few main things that are important to note regarding this image: ## Interactive shell ```console -$ docker run -it --rm bash:4.4 +$ docker run -it --rm amd64/bash:4.4 bash-4.4# which bash /usr/local/bin/bash bash-4.4# echo $BASH_VERSION @@ -102,16 +104,16 @@ bash-4.4# echo $BASH_VERSION ## Testing scripts via bind-mount ```console -$ docker run -it --rm -v /path/to/script.sh:/script.sh:ro bash:4.4 bash /script.sh +$ docker run -it --rm -v /path/to/script.sh:/script.sh:ro amd64/bash:4.4 bash /script.sh ... -$ docker run -it --rm -v /path/to/script.sh:/script.sh:ro bash:3.2 bash /script.sh +$ docker run -it --rm -v /path/to/script.sh:/script.sh:ro amd64/bash:3.2 bash /script.sh ... ``` ## Testing scripts via `Dockerfile` ```dockerfile -FROM bash:4.4 +FROM amd64/bash:4.4 COPY script.sh / diff --git a/bonita/README.md b/bonita/README.md index 4e09d8d33979..68fe723357e5 100644 --- a/bonita/README.md +++ b/bonita/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `bonita` official image](https://hub.docker.com/_/bonita) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -64,7 +66,7 @@ Bonita is an open-source business process management and workflow suite created ## Quick start ```console -$ docker run --name bonita -d -p 8080:8080 bonita +$ docker run --name bonita -d -p 8080:8080 amd64/bonita ``` This will start a container running [Bonita runtime](https://documentation.bonitasoft.com/bonita/latest/tomcat-bundle): a Tomcat bundle with Bonita Engine + Bonita Portal. With no environment variables specified, it's as if you have launched the bundle on your host using startup.{sh|bat} (with security hardening on REST and HTTP APIs, cf Security part). Bonita uses a H2 database here. @@ -149,13 +151,13 @@ BIZ_DB_PASS=custombusinesspass ``` ```bash -docker run --name=bonita -h --env-file=env.txt -d -p 8080:8080 bonita +docker run --name=bonita -h --env-file=env.txt -d -p 8080:8080 amd64/bonita ``` ## Start Bonita with custom security credentials ```bash -docker run --name=bonita -h -e "BONITA_RUNTIME_ADMIN_USERNAME=tech_user" -e "BONITA_RUNTIME_ADMIN_PASSWORD=secret" -e "PLATFORM_LOGIN=pfadmin" -e "PLATFORM_PASSWORD=pfsecret" -d -p 8080:8080 bonita +docker run --name=bonita -h -e "BONITA_RUNTIME_ADMIN_USERNAME=tech_user" -e "BONITA_RUNTIME_ADMIN_PASSWORD=secret" -e "PLATFORM_LOGIN=pfadmin" -e "PLATFORM_PASSWORD=pfsecret" -d -p 8080:8080 amd64/bonita ``` Now you can access the Bonita Runtime on localhost:8080/bonita and login using: tech_user / secret @@ -296,7 +298,7 @@ This Docker image activates both static and dynamic authorization checks by defa For specific needs you can override this behavior by setting HTTP_API to true: ```console -$ docker run -e HTTP_API=true -e HTTP_API_PASSWORD="My-Cust0m_S3cR3T" --name bonita -d -p 8080:8080 bonita +$ docker run -e HTTP_API=true -e HTTP_API_PASSWORD="My-Cust0m_S3cR3T" --name bonita -d -p 8080:8080 amd64/bonita ``` ## Update from an earlier version of Bonita @@ -373,7 +375,7 @@ For updating from a version before 7.10.0, please refer to the [documentation](h - Launch the new container pointing towards the copy of the database. ```console - $ docker run --name=bonita --link mydbpostgres:postgres -e "DB_NAME=newbonitadb" -e "DB_USER=newbonitauser" -e "DB_PASS=newbonitapass" -d -p 8081:8080 bonita:2024.3-u0 + $ docker run --name=bonita --link mydbpostgres:postgres -e "DB_NAME=newbonitadb" -e "DB_USER=newbonitauser" -e "DB_PASS=newbonitapass" -d -p 8081:8080 amd64/bonita:2024.3-u0 ``` For more details regarding Bonita update and for version before 7.10.0, see the [documentation](https://documentation.bonitasoft.com/bonita/latest/version-update/migrate-from-an-earlier-version-of-bonita). diff --git a/buildpack-deps/README.md b/buildpack-deps/README.md index 69e2de259509..cb2a02b10743 100644 --- a/buildpack-deps/README.md +++ b/buildpack-deps/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `buildpack-deps` official image](https://hub.docker.com/_/buildpack-deps) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/busybox/README.md b/busybox/README.md index e5ca4ea86aed..460195667471 100644 --- a/busybox/README.md +++ b/busybox/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `busybox` official image](https://hub.docker.com/_/busybox) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -74,7 +76,7 @@ BusyBox combines tiny versions of many common UNIX utilities into a single small ## Run BusyBox shell ```console -$ docker run -it --rm busybox +$ docker run -it --rm amd64/busybox ``` This will drop you into an `sh` shell to allow you to do what you want inside a BusyBox system. @@ -82,7 +84,7 @@ This will drop you into an `sh` shell to allow you to do what you want inside a ## Create a `Dockerfile` for a binary ```dockerfile -FROM busybox +FROM amd64/busybox COPY ./my-static-binary /my-static-binary CMD ["/my-static-binary"] ``` @@ -91,19 +93,19 @@ This `Dockerfile` will allow you to create a minimal image for your statically c # Image Variants -The `busybox` images contain BusyBox built against various "libc" variants (for a comparison of "libc" variants, [Eta Labs has a very nice chart](http://www.etalabs.net/compare_libcs.html) which lists many similarities and differences). +The `amd64/busybox` images contain BusyBox built against various "libc" variants (for a comparison of "libc" variants, [Eta Labs has a very nice chart](http://www.etalabs.net/compare_libcs.html) which lists many similarities and differences). For more information about the specific particulars of the build process for each variant, see `Dockerfile.builder` in the same directory as each variant's `Dockerfile` (see links above). -## `busybox:glibc` +## `amd64/busybox:glibc` - [glibc from Debian](https://packages.debian.org/search?searchon=names&exact=1&suite=all§ion=all&keywords=libc6) (which is then included in the image) -## `busybox:uclibc` +## `amd64/busybox:uclibc` - [uClibc](https://uclibc.org) via [Buildroot](https://buildroot.org) (statically compiled) -## `busybox:musl` +## `amd64/busybox:musl` - [musl from Alpine](https://pkgs.alpinelinux.org/packages?name=musl) (statically compiled) diff --git a/caddy/README.md b/caddy/README.md index a232179b787c..218aeac1a098 100644 --- a/caddy/README.md +++ b/caddy/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `caddy` official image](https://hub.docker.com/_/caddy) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -32,32 +34,15 @@ WARNING: - [`2.10.0-builder-alpine`, `2.10-builder-alpine`, `2-builder-alpine`, `builder-alpine`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/builder/Dockerfile) -- [`2.10.0-windowsservercore-ltsc2022`, `2.10-windowsservercore-ltsc2022`, `2-windowsservercore-ltsc2022`, `windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/ltsc2022/Dockerfile) - -- [`2.10.0-windowsservercore-ltsc2025`, `2.10-windowsservercore-ltsc2025`, `2-windowsservercore-ltsc2025`, `windowsservercore-ltsc2025`](https://github.com/caddyserver/caddy-docker/blob/b4226f27405e98d9330ca807a80807d5d523ebba/2.10/windows/ltsc2025/Dockerfile) - -- [`2.10.0-builder-windowsservercore-ltsc2022`, `2.10-builder-windowsservercore-ltsc2022`, `2-builder-windowsservercore-ltsc2022`, `builder-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows-builder/ltsc2022/Dockerfile) - -- [`2.10.0-builder-windowsservercore-ltsc2025`, `2.10-builder-windowsservercore-ltsc2025`, `2-builder-windowsservercore-ltsc2025`, `builder-windowsservercore-ltsc2025`](https://github.com/caddyserver/caddy-docker/blob/b4226f27405e98d9330ca807a80807d5d523ebba/2.10/windows-builder/ltsc2025/Dockerfile) - ## Shared Tags - `2.10.0`, `2.10`, `2`, `latest`: - [`2.10.0-alpine`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/alpine/Dockerfile) - - [`2.10.0-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/ltsc2022/Dockerfile) - - [`2.10.0-windowsservercore-ltsc2025`](https://github.com/caddyserver/caddy-docker/blob/b4226f27405e98d9330ca807a80807d5d523ebba/2.10/windows/ltsc2025/Dockerfile) - `2.10.0-builder`, `2.10-builder`, `2-builder`, `builder`: - [`2.10.0-builder-alpine`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/builder/Dockerfile) - - [`2.10.0-builder-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows-builder/ltsc2022/Dockerfile) - - [`2.10.0-builder-windowsservercore-ltsc2025`](https://github.com/caddyserver/caddy-docker/blob/b4226f27405e98d9330ca807a80807d5d523ebba/2.10/windows-builder/ltsc2025/Dockerfile) - -- `2.10.0-windowsservercore`, `2.10-windowsservercore`, `2-windowsservercore`, `windowsservercore`: - - - [`2.10.0-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/ltsc2022/Dockerfile) - - [`2.10.0-windowsservercore-ltsc2025`](https://github.com/caddyserver/caddy-docker/blob/b4226f27405e98d9330ca807a80807d5d523ebba/2.10/windows/ltsc2025/Dockerfile) # Quick reference (cont.) @@ -109,7 +94,7 @@ $ echo "hello world" > index.html $ docker run -d -p 80:80 \ -v $PWD/index.html:/usr/share/caddy/index.html \ -v caddy_data:/data \ - caddy + amd64/caddy ... $ curl http://localhost/ hello world @@ -121,7 +106,7 @@ To override the default [`Caddyfile`](https://github.com/caddyserver/dist/blob/m $ docker run -d -p 80:80 \ -v $PWD/conf:/etc/caddy \ -v caddy_data:/data \ - caddy + amd64/caddy ``` #### ⚠️ Do not mount the Caddyfile directly at `/etc/caddy/Caddyfile` @@ -137,7 +122,7 @@ $ docker run -d --cap-add=NET_ADMIN -p 80:80 -p 443:443 -p 443:443/udp \ -v /site:/srv \ -v caddy_data:/data \ -v caddy_config:/config \ - caddy caddy file-server --domain example.com + amd64/caddy caddy file-server --domain example.com ``` The key here is that Caddy is able to listen to ports `80` and `443`, both required for the ACME HTTP challenge. @@ -146,11 +131,11 @@ See [Caddy's docs](https://caddyserver.com/docs/automatic-https) for more inform ### Building your own Caddy-based image -Most users deploying production sites will not want to rely on mounting files into a container, but will instead base their own images on `caddy`: +Most users deploying production sites will not want to rely on mounting files into a container, but will instead base their own images on `amd64/caddy`: ```Dockerfile # note: never use the :latest tag in a production site -FROM caddy: +FROM amd64/caddy: COPY Caddyfile /etc/caddy/Caddyfile COPY site /srv @@ -163,18 +148,18 @@ Caddy is extendable through the use of "modules". See https://caddyserver.com/do You can use the `:builder` image as a short-cut to building a new Caddy binary: ```Dockerfile -FROM caddy:-builder AS builder +FROM amd64/caddy:-builder AS builder RUN xcaddy build \ --with github.com/caddyserver/nginx-adapter \ --with github.com/hairyhenderson/caddy-teapot-module@v0.0.3-0 -FROM caddy: +FROM amd64/caddy: COPY --from=builder /usr/bin/caddy /usr/bin/caddy ``` -Note the second `FROM` instruction - this produces a much smaller image by simply overlaying the newly-built binary on top of the regular `caddy` image. +Note the second `FROM` instruction - this produces a much smaller image by simply overlaying the newly-built binary on top of the regular `amd64/caddy` image. The [`xcaddy`](https://caddyserver.com/docs/build#xcaddy) tool is used to [build a new Caddy entrypoint](https://github.com/caddyserver/caddy/blob/4217217badf220d7d2c25f43f955fdc8454f2c64/cmd/caddy/main.go#L15..L25), with the provided modules. You can specify just a module name, or a name with a version (separated by `@`). You can also specify a specific version (can be a version tag or commit hash) of Caddy to build from. Read more about [`xcaddy` usage](https://github.com/caddyserver/xcaddy#command-usage). @@ -208,7 +193,7 @@ If you prefer to use `docker compose` to run your stack, here's a sample service ```yaml services: caddy: - image: caddy: + image: amd64/caddy: restart: unless-stopped cap_add: - NET_ADMIN @@ -231,13 +216,13 @@ Graceful reloads can then be conducted via `docker compose exec -w /etc/caddy ca # Image Variants -The `caddy` images come in many flavors, each designed for a specific use case. +The `amd64/caddy` images come in many flavors, each designed for a specific use case. -## `caddy:` +## `amd64/caddy:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `caddy:-alpine` +## `amd64/caddy:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. @@ -245,15 +230,6 @@ This variant is useful when final image size being as small as possible is your To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar). -## `caddy:-windowsservercore` - -This image is based on [Windows Server Core (`microsoft/windowsservercore`)](https://hub.docker.com/r/microsoft/windowsservercore/). As such, it only works in places which that image does, such as Windows 10 Professional/Enterprise (Anniversary Edition) or Windows Server 2016. - -For information about how to get Docker running on Windows, please see the relevant "Quick Start" guide provided by Microsoft: - -- [Windows Server Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_server) -- [Windows 10 Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_10) - # License View [license information](https://github.com/caddyserver/caddy/blob/master/LICENSE) for the software contained in this image. diff --git a/cassandra/README.md b/cassandra/README.md index c3532c259208..c9770dd0ca0b 100644 --- a/cassandra/README.md +++ b/cassandra/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `cassandra` official image](https://hub.docker.com/_/cassandra) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -68,7 +70,7 @@ Apache Cassandra is an open source distributed database management system design Starting a Cassandra instance is simple: ```console -$ docker run --name some-cassandra --network some-network -d cassandra:tag +$ docker run --name some-cassandra --network some-network -d amd64/cassandra:tag ``` ... where `some-cassandra` is the name you want to assign to your container and `tag` is the tag specifying the Cassandra version you want. See the list above for relevant tags. @@ -78,7 +80,7 @@ $ docker run --name some-cassandra --network some-network -d cassandra:tag Using the environment variables documented below, there are two cluster scenarios: instances on the same machine and instances on separate machines. For the same machine, start the instance as described above. To start other instances, just tell each new node where the first is. ```console -$ docker run --name some-cassandra2 -d --network some-network -e CASSANDRA_SEEDS=some-cassandra cassandra:tag +$ docker run --name some-cassandra2 -d --network some-network -e CASSANDRA_SEEDS=some-cassandra amd64/cassandra:tag ``` For separate machines (ie, two VMs on a cloud provider), you need to tell Cassandra what IP address to advertise to the other nodes (since the address of the container is behind the docker bridge). @@ -86,13 +88,13 @@ For separate machines (ie, two VMs on a cloud provider), you need to tell Cassan Assuming the first machine's IP address is `10.42.42.42` and the second's is `10.43.43.43`, start the first with exposed gossip port: ```console -$ docker run --name some-cassandra -d -e CASSANDRA_BROADCAST_ADDRESS=10.42.42.42 -p 7000:7000 cassandra:tag +$ docker run --name some-cassandra -d -e CASSANDRA_BROADCAST_ADDRESS=10.42.42.42 -p 7000:7000 amd64/cassandra:tag ``` Then start a Cassandra container on the second machine, with the exposed gossip port and seed pointing to the first machine: ```console -$ docker run --name some-cassandra -d -e CASSANDRA_BROADCAST_ADDRESS=10.43.43.43 -p 7000:7000 -e CASSANDRA_SEEDS=10.42.42.42 cassandra:tag +$ docker run --name some-cassandra -d -e CASSANDRA_BROADCAST_ADDRESS=10.43.43.43 -p 7000:7000 -e CASSANDRA_SEEDS=10.42.42.42 amd64/cassandra:tag ``` ## Connect to Cassandra from `cqlsh` @@ -100,7 +102,7 @@ $ docker run --name some-cassandra -d -e CASSANDRA_BROADCAST_ADDRESS=10.43.43.43 The following command starts another Cassandra container instance and runs `cqlsh` (Cassandra Query Language Shell) against your original Cassandra container, allowing you to execute CQL statements against your database instance: ```console -$ docker run -it --network some-network --rm cassandra cqlsh some-cassandra +$ docker run -it --network some-network --rm amd64/cassandra cqlsh some-cassandra ``` More information about the CQL can be found in the [Cassandra documentation](https://cassandra.apache.org/doc/latest/cql/index.html). @@ -123,7 +125,7 @@ $ docker logs some-cassandra The best way to provide configuration to the `cassandra` image is to provide a custom `/etc/cassandra/cassandra.yaml` file. There are many ways to provide this file to the container (via short `Dockerfile` with `FROM` + `COPY`, via [Docker Configs](https://docs.docker.com/engine/swarm/configs/), via runtime bind-mount, etc), the details of which are left as an exercise for the reader. -To use a different file name (for example, to avoid all image-provided configuration behavior), use `-Dcassandra.config=/path/to/cassandra.yaml` as an argument to the image (as in, `docker run ... cassandra -Dcassandra.config=/path/to/cassandra.yaml`). +To use a different file name (for example, to avoid all image-provided configuration behavior), use `-Dcassandra.config=/path/to/cassandra.yaml` as an argument to the image (as in, `docker run ... amd64/cassandra -Dcassandra.config=/path/to/cassandra.yaml`). There are a small number of environment variables supported by the image which will modify `/etc/cassandra/cassandra.yaml` in some way (but the script is modifying YAML, so is naturally fragile): @@ -162,7 +164,7 @@ The Docker documentation is a good starting point for understanding the differen 2. Start your `cassandra` container like this: ```console - $ docker run --name some-cassandra -v /my/own/datadir:/var/lib/cassandra -d cassandra:tag + $ docker run --name some-cassandra -v /my/own/datadir:/var/lib/cassandra -d amd64/cassandra:tag ``` The `-v /my/own/datadir:/var/lib/cassandra` part of the command mounts the `/my/own/datadir` directory from the underlying host system as `/var/lib/cassandra` inside the container, where Cassandra by default will write its data files. diff --git a/chronograf/README.md b/chronograf/README.md index 3861859187ac..552d792acfa8 100644 --- a/chronograf/README.md +++ b/chronograf/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `chronograf` official image](https://hub.docker.com/_/chronograf) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -72,7 +74,7 @@ Chronograf is InfluxData's open source web application. Use Chronograf with the Chronograf runs on port 8888. It can be run and accessed by exposing that port: ```console -$ docker run -p 8888:8888 chronograf +$ docker run -p 8888:8888 amd64/chronograf ``` ### Mounting a volume @@ -82,7 +84,7 @@ The Chronograf image exposes a shared volume under `/var/lib/chronograf`, so you ```console $ docker run -p 8888:8888 \ -v $PWD:/var/lib/chronograf \ - chronograf + amd64/chronograf ``` Modify `$PWD` to the directory where you want to store data associated with the InfluxDB container. @@ -92,7 +94,7 @@ You can also have Docker control the volume mountpoint by using a named volume. ```console $ docker run -p 8888:8888 \ -v chronograf:/var/lib/chronograf \ - chronograf + amd64/chronograf ``` ### Using the container with InfluxDB @@ -116,7 +118,7 @@ We can now start a Chronograf container that references this database. ```console $ docker run -p 8888:8888 \ --net=influxdb \ - chronograf --influxdb-url=http://influxdb:8086 + amd64/chronograf --influxdb-url=http://influxdb:8086 ``` Try combining this with Telegraf to get dashboards for your infrastructure within minutes! @@ -131,13 +133,13 @@ See the [official docs](https://docs.influxdata.com/chronograf/latest/) for info # Image Variants -The `chronograf` images come in many flavors, each designed for a specific use case. +The `amd64/chronograf` images come in many flavors, each designed for a specific use case. -## `chronograf:` +## `amd64/chronograf:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `chronograf:-alpine` +## `amd64/chronograf:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/cirros/README.md b/cirros/README.md index d76fa882bfef..5ea39120135e 100644 --- a/cirros/README.md +++ b/cirros/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `cirros` official image](https://hub.docker.com/_/cirros) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/clearlinux/README.md b/clearlinux/README.md index 44a17960be65..6d33486cb2f3 100644 --- a/clearlinux/README.md +++ b/clearlinux/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `clearlinux` official image](https://hub.docker.com/_/clearlinux) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -51,14 +53,14 @@ This serves as the official [Clear Linux OS](https://clearlinux.org) image. ![logo](https://raw.githubusercontent.com/docker-library/docs/dbe1941be63c87cc691b59d50f830f9dd7d69df9/clearlinux/logo.png) -The `clearlinux:latest` tag will point to `clearlinux:base` which will track toward the latest release version of the distribution. +The `amd64/clearlinux:latest` tag will point to `amd64/clearlinux:base` which will track toward the latest release version of the distribution. This image contains the os-core and os-core-update bundles, the latter can be used to add additional Clear Linux OS components (see [here](https://clearlinux.org/documentation/swupdate_about_sw_update.html) for more details about swupd and [here](https://clearlinux.org/documentation/bundles_overview.html) for more information on bundles). The following Dockerfile will install the editors and dev-utils bundles on top of the base image ```sh -FROM clearlinux:base +FROM amd64/clearlinux:base RUN swupd bundle-add editors dev-utils ``` diff --git a/clefos/README.md b/clefos/README.md index 234ff01d241b..b73d73673556 100644 --- a/clefos/README.md +++ b/clefos/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `clefos` official image](https://hub.docker.com/_/clefos) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # **DEPRECATION NOTICE** With [the EOL of CentOS 7 (June 30, 2024)](https://www.redhat.com/en/topics/linux/centos-linux-eol), this image/project is [officially deprecated](https://github.com/docker-library/official-images/pull/7964#issuecomment-2253636315). Please adjust your usage accordingly. @@ -28,7 +30,7 @@ With [the EOL of CentOS 7 (June 30, 2024)](https://www.redhat.com/en/topics/linu # Supported tags and respective `Dockerfile` links -**No supported tags** +**WARNING:** THIS IMAGE *IS NOT SUPPORTED* ON THE `amd64` ARCHITECTURE # Quick reference (cont.) @@ -57,7 +59,7 @@ ClefOS Linux is a community-supported distribution for IBM Z (aka "mainframe") d ## ClefOS image documentation -The `clefos:latest` tag is always the most recent version currently available. +The `amd64/clefos:latest` tag is always the most recent version currently available. ### Building the Base Image @@ -69,7 +71,7 @@ The `VERSION` file contains the id of the current ClefOS version and will be add ### Rolling builds -The ClefOS Project offers regularly updated images for all active releases. These images will be updated monthly or as needed for emergency fixes. These rolling updates are tagged with the major version number and minor tags as well. For example, if 7.4.1708 is the most current then the build will result in `clefos:7` and `clefos:7.4.1708`. When the next minor level is available then `clefos:7` and `clefos:7.x.yymm` will be identical. +The ClefOS Project offers regularly updated images for all active releases. These images will be updated monthly or as needed for emergency fixes. These rolling updates are tagged with the major version number and minor tags as well. For example, if 7.4.1708 is the most current then the build will result in `amd64/clefos:7` and `amd64/clefos:7.4.1708`. When the next minor level is available then `amd64/clefos:7` and `amd64/clefos:7.x.yymm` will be identical. ### Overlayfs and yum @@ -81,12 +83,12 @@ By default, the ClefOS containers are built using yum's `nodocs` option, which h ## Systemd integration -Systemd is not included in both the `clefos:7` and `clefos:latest` base containers, but can be created from these bases: +Systemd is not included in both the `amd64/clefos:7` and `amd64/clefos:latest` base containers, but can be created from these bases: ### Dockerfile for systemd base image ```dockerfile -FROM clefos:7 +FROM amd64/clefos:7 ENV container docker diff --git a/clickhouse/README.md b/clickhouse/README.md index 49a0bbff4b51..0e31386a05ce 100644 --- a/clickhouse/README.md +++ b/clickhouse/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `clickhouse` official image](https://hub.docker.com/_/clickhouse) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -80,7 +82,7 @@ For more information and documentation see https://clickhouse.com/. ### start server instance ```bash -docker run -d --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse +docker run -d --name some-clickhouse-server --ulimit nofile=262144:262144 amd64/clickhouse ``` By default, ClickHouse will be accessible only via the Docker network. See the **networking** section below. @@ -90,7 +92,7 @@ By default, starting above server instance will be run as the `default` user wit ### connect to it from a native client ```bash -docker run -it --rm --network=container:some-clickhouse-server --entrypoint clickhouse-client clickhouse +docker run -it --rm --network=container:some-clickhouse-server --entrypoint clickhouse-client amd64/clickhouse # OR docker exec -it some-clickhouse-server clickhouse-client ``` @@ -119,7 +121,7 @@ docker rm some-clickhouse-server You can expose your ClickHouse running in docker by [mapping a particular port](https://docs.docker.com/config/containers/container-networking/) from inside the container using host ports: ```bash -docker run -d -p 18123:8123 -p19000:9000 -e CLICKHOUSE_PASSWORD=changeme --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse +docker run -d -p 18123:8123 -p19000:9000 -e CLICKHOUSE_PASSWORD=changeme --name some-clickhouse-server --ulimit nofile=262144:262144 amd64/clickhouse echo 'SELECT version()' | curl 'http://localhost:18123/?password=changeme' --data-binary @- ``` @@ -128,7 +130,7 @@ echo 'SELECT version()' | curl 'http://localhost:18123/?password=changeme' --dat Or by allowing the container to use [host ports directly](https://docs.docker.com/network/host/) using `--network=host` (also allows achieving better network performance): ```bash -docker run -d --network=host --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse +docker run -d --network=host --name some-clickhouse-server --ulimit nofile=262144:262144 amd64/clickhouse echo 'SELECT version()' | curl 'http://localhost:8123/' --data-binary @- ``` @@ -147,7 +149,7 @@ Typically you may want to mount the following folders inside your container to a docker run -d \ -v "$PWD/ch_data:/var/lib/clickhouse/" \ -v "$PWD/ch_logs:/var/log/clickhouse-server/" \ - --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse + --name some-clickhouse-server --ulimit nofile=262144:262144 amd64/clickhouse ``` You may also want to mount: @@ -165,7 +167,7 @@ They are optional and can be enabled using the following [docker command-line ar ```bash docker run -d \ --cap-add=SYS_NICE --cap-add=NET_ADMIN --cap-add=IPC_LOCK \ - --name some-clickhouse-server --ulimit nofile=262144:262144 clickhouse + --name some-clickhouse-server --ulimit nofile=262144:262144 amd64/clickhouse ``` Read more in [knowledge base](https://clickhouse.com/docs/knowledgebase/configure_cap_ipc_lock_and_cap_sys_nice_in_docker). @@ -179,14 +181,14 @@ ClickHouse configuration is represented with a file "config.xml" ([documentation ### Start server instance with custom configuration ```bash -docker run -d --name some-clickhouse-server --ulimit nofile=262144:262144 -v /path/to/your/config.xml:/etc/clickhouse-server/config.xml clickhouse +docker run -d --name some-clickhouse-server --ulimit nofile=262144:262144 -v /path/to/your/config.xml:/etc/clickhouse-server/config.xml amd64/clickhouse ``` ### Start server as custom user ```bash # $PWD/data/clickhouse should exist and be owned by current user -docker run --rm --user "${UID}:${GID}" --name some-clickhouse-server --ulimit nofile=262144:262144 -v "$PWD/logs/clickhouse:/var/log/clickhouse-server" -v "$PWD/data/clickhouse:/var/lib/clickhouse" clickhouse +docker run --rm --user "${UID}:${GID}" --name some-clickhouse-server --ulimit nofile=262144:262144 -v "$PWD/logs/clickhouse:/var/log/clickhouse-server" -v "$PWD/data/clickhouse:/var/lib/clickhouse" amd64/clickhouse ``` When you use the image with local directories mounted, you probably want to specify the user to maintain the proper file ownership. Use the `--user` argument and mount `/var/lib/clickhouse` and `/var/log/clickhouse-server` inside the container. Otherwise, the image will complain and not start. @@ -194,7 +196,7 @@ When you use the image with local directories mounted, you probably want to spec ### Start server from root (useful in case of enabled user namespace) ```bash -docker run --rm -e CLICKHOUSE_RUN_AS_ROOT=1 --name clickhouse-server-userns -v "$PWD/logs/clickhouse:/var/log/clickhouse-server" -v "$PWD/data/clickhouse:/var/lib/clickhouse" clickhouse +docker run --rm -e CLICKHOUSE_RUN_AS_ROOT=1 --name clickhouse-server-userns -v "$PWD/logs/clickhouse:/var/log/clickhouse-server" -v "$PWD/data/clickhouse:/var/lib/clickhouse" amd64/clickhouse ``` ### How to create default database and user on starting @@ -202,7 +204,7 @@ docker run --rm -e CLICKHOUSE_RUN_AS_ROOT=1 --name clickhouse-server-userns -v " Sometimes you may want to create a user (user named `default` is used by default) and database on a container start. You can do it using environment variables `CLICKHOUSE_DB`, `CLICKHOUSE_USER`, `CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT` and `CLICKHOUSE_PASSWORD`: ```bash -docker run --rm -e CLICKHOUSE_DB=my_database -e CLICKHOUSE_USER=username -e CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 -e CLICKHOUSE_PASSWORD=password -p 9000:9000/tcp clickhouse +docker run --rm -e CLICKHOUSE_DB=my_database -e CLICKHOUSE_USER=username -e CLICKHOUSE_DEFAULT_ACCESS_MANAGEMENT=1 -e CLICKHOUSE_PASSWORD=password -p 9000:9000/tcp amd64/clickhouse ``` #### Managing `default` user @@ -212,7 +214,7 @@ The user `default` has disabled network access by default in the case none of `C There's a way to make `default` user insecurely available by setting environment variable `CLICKHOUSE_SKIP_USER_SETUP` to 1: ```bash -docker run --rm -e CLICKHOUSE_SKIP_USER_SETUP=1 -p 9000:9000/tcp clickhouse +docker run --rm -e CLICKHOUSE_SKIP_USER_SETUP=1 -p 9000:9000/tcp amd64/clickhouse ``` ## How to extend this image diff --git a/clojure/README.md b/clojure/README.md index 77dd040d585c..cf308283249d 100644 --- a/clojure/README.md +++ b/clojure/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `clojure` official image](https://hub.docker.com/_/clojure) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -255,7 +257,7 @@ But you can also append a hyphen and the version of that tool you'd like to use. Add a `Dockerfile` to an existing Leiningen/Clojure project with the following contents: ```dockerfile -FROM clojure +FROM amd64/clojure COPY . /usr/src/app WORKDIR /usr/src/app CMD ["lein", "run"] @@ -271,7 +273,7 @@ $ docker run -it --rm --name my-running-app my-clojure-app While the above is the most straightforward example of a `Dockerfile`, it does have some drawbacks. The `lein run` command will download your dependencies, compile the project, and then run it. That's a lot of work, all of which you may not want done every time you run the image. To get around this, you can download the dependencies and compile the project ahead of time. This will significantly reduce startup time when you run your image. ```dockerfile -FROM clojure +FROM amd64/clojure RUN mkdir -p /usr/src/app WORKDIR /usr/src/app COPY project.clj /usr/src/app/ @@ -290,7 +292,7 @@ You can then build and run the image as above. If you have an existing Lein/Clojure project, it's fairly straightforward to compile your project into a jar from a container: ```console -$ docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app clojure lein uberjar +$ docker run -it --rm -v "$PWD":/usr/src/app -w /usr/src/app amd64/clojure lein uberjar ``` This will build your project into a jar file located in your project's `target/uberjar` directory. @@ -301,9 +303,9 @@ See [the official image README](https://github.com/Quantisan/docker-clojure/blob # Image Variants -The `clojure` images come in many flavors, each designed for a specific use case. +The `amd64/clojure` images come in many flavors, each designed for a specific use case. -## `clojure:` +## `amd64/clojure:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. @@ -311,7 +313,7 @@ Some of these tags may have names like bookworm, bullseye, or trixie in them. Th Some of these tags may have names like jammy or noble in them. These are the suite code names for releases of [Ubuntu](https://wiki.ubuntu.com/Releases) and indicate which release the image is based on. If your image needs to install any additional packages beyond what comes with the image, you'll likely want to specify one of these explicitly to minimize breakage when there are new releases of Ubuntu. -## `clojure:-alpine` +## `amd64/clojure:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. @@ -319,9 +321,9 @@ This variant is useful when final image size being as small as possible is your To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar). -## `clojure:-slim` +## `amd64/clojure:-slim` -This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `clojure`. Unless you are working in an environment where *only* the `clojure` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. +This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `amd64/clojure`. Unless you are working in an environment where *only* the `amd64/clojure` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. # License diff --git a/composer/README.md b/composer/README.md index c040a15b1468..39e723578593 100644 --- a/composer/README.md +++ b/composer/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `composer` official image](https://hub.docker.com/_/composer) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -64,7 +66,7 @@ You can read more about Composer in our [official documentation](https://getcomp ```console $ docker run --rm --interactive --tty \ --volume $PWD:/app \ - composer + amd64/composer ``` ### Persist cache / global configuration @@ -75,7 +77,7 @@ You can bind mount the Composer home directory from your host to the container t $ docker run --rm --interactive --tty \ --volume $PWD:/app \ --volume ${COMPOSER_HOME:-$HOME/.composer}:/tmp \ - composer + amd64/composer ``` **Note:** this relies on the fact that the `COMPOSER_HOME` value is set to `/tmp` in the image by default. @@ -89,7 +91,7 @@ $ docker run --rm --interactive --tty \ --volume ${COMPOSER_HOME:-$HOME/.config/composer}:$COMPOSER_HOME \ --volume ${COMPOSER_CACHE_DIR:-$HOME/.cache/composer}:$COMPOSER_CACHE_DIR \ --volume $PWD:/app \ - composer + amd64/composer ``` ### Filesystem permissions @@ -100,7 +102,7 @@ By default, Composer runs as root inside the container. This can lead to permiss $ docker run --rm --interactive --tty \ --volume $PWD:/app \ --user $(id -u):$(id -g) \ - composer + amd64/composer ``` See: https://docs.docker.com/engine/reference/run/#user for details. @@ -117,7 +119,7 @@ $ eval $(ssh-agent); \ --volume $PWD:/app \ --volume $SSH_AUTH_SOCK:/ssh-auth.sock \ --env SSH_AUTH_SOCK=/ssh-auth.sock \ - composer + amd64/composer ``` **Note:** On OSX this requires Docker For Mac v2.2.0.0 or later, see [docker/for-mac#410](https://github.com/docker/for-mac/issues/410). @@ -133,7 +135,7 @@ $ eval $(ssh-agent); \ --volume /etc/group:/etc/group:ro \ --env SSH_AUTH_SOCK=/ssh-auth.sock \ --user $(id -u):$(id -g) \ - composer + amd64/composer ``` # Troubleshooting @@ -151,7 +153,7 @@ Suggestions: **Note:** Docker 17.05 introduced [multi-stage builds](https://docs.docker.com/develop/develop-images/multistage-build/), simplifying this enormously: ```dockerfile - COPY --from=composer /usr/bin/composer /usr/bin/composer + COPY --from=amd64/composer /usr/bin/composer /usr/bin/composer ``` - (alternatively) specify the target [platform](https://getcomposer.org/doc/06-config.md#platform) / extension(s) in your `composer.json`: @@ -172,7 +174,7 @@ Suggestions: ```console $ docker run --rm --interactive --tty \ --volume $PWD:/app \ - composer install --ignore-platform-reqs --no-scripts + amd64/composer install --ignore-platform-reqs --no-scripts ``` # License diff --git a/convertigo/README.md b/convertigo/README.md index d4997579dd87..676a1cca8c2a 100644 --- a/convertigo/README.md +++ b/convertigo/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `convertigo` official image](https://hub.docker.com/_/convertigo) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -64,7 +66,7 @@ Convertigo Community edition brought to you by Convertigo SA (Paris & San Franci ## Quick start ```console -$ docker run --name C8O -d -p 28080:28080 convertigo +$ docker run --name C8O -d -p 28080:28080 amd64/convertigo ``` This will start a container running the minimum Convertigo server. Convertigo uses images' **/workspace** directory to store configuration file and deployed projects as an Docker volume. @@ -86,7 +88,7 @@ $ docker run -d --name fullsync couchdb:3.2.2 Then launch Convertigo and link it to the running 'fullsync' container. Convertigo Low Code sever will automatically use it as its fullsync repository. ```console -$ docker run -d --name C8O --link fullsync:couchdb -p 28080:28080 convertigo +$ docker run -d --name C8O --link fullsync:couchdb -p 28080:28080 amd64/convertigo ``` ## Use embedded PouchDB as FullSync engine (not for production) @@ -96,7 +98,7 @@ Convertigo FullSync is designed to use CouchDB server or cluster. Convertigo Ful It can be enabled directly at startup: ```console -$ docker run -d --name C8O -e JAVA_OPTS="-Dconvertigo.engine.fullsync.pouchdb=true" -p 28080:28080 convertigo +$ docker run -d --name C8O -e JAVA_OPTS="-Dconvertigo.engine.fullsync.pouchdb=true" -p 28080:28080 amd64/convertigo ``` ## Link Convertigo Low Code Server to a Billing & Analytics database @@ -111,7 +113,7 @@ $ docker run -d --name C8O --link [mysql-container]:mysql -p 28080:28080 -Dconvertigo.engine.billing.persistence.jdbc.username=[username for the c8oAnalytics db] \ -Dconvertigo.engine.billing.persistence.jdbc.password=[password for specified db user] \ -Dconvertigo.engine.billing.persistence.jdbc.url=jdbc:mysql://mysql:3306/c8oAnalytics" \ -convertigo +amd64/convertigo ``` ## Where is Convertigo Low Code server storing deployed projects @@ -119,7 +121,7 @@ convertigo Projects are deployed in the Convertigo workspace, a simple file system directory. You can map the docker container **/workspace** to your physical system by using: ```console -$ docker run --name C8O -v $(pwd):/workspace -d -p 28080:28080 convertigo +$ docker run --name C8O -v $(pwd):/workspace -d -p 28080:28080 amd64/convertigo ``` You can share the same workspace by all Convertigo containers. In this case, when you deploy a project on a Convertigo container, it will be seen by others. This is the best way to build multi-instance load balanced Convertigo server farms. @@ -138,7 +140,7 @@ To avoid log and cache mixing, you have to add 2 variables for instance specific If you want to make a vertical image ready to start with your application inside, you have to have your built projects **.car** files next to your `Dockerfile`: ```console -FROM convertigo +FROM amd64/convertigo COPY myProject.car /usr/local/tomcat/webapps/convertigo/WEB-INF/default_user_workspace/projects/ COPY myDependency.car /usr/local/tomcat/webapps/convertigo/WEB-INF/default_user_workspace/projects/ ``` @@ -160,7 +162,7 @@ These accounts can be configured through the **administration console** and save You can change the default administration account : ```console -$ docker run -d --name C8O -e CONVERTIGO_ADMIN_USER=administrator -e CONVERTIGO_ADMIN_PASSWORD=s3cret -p 28080:28080 convertigo +$ docker run -d --name C8O -e CONVERTIGO_ADMIN_USER=administrator -e CONVERTIGO_ADMIN_PASSWORD=s3cret -p 28080:28080 amd64/convertigo ``` ### `CONVERTIGO_TESTPLATFORM_USER` and `CONVERTIGO_TESTPLATFORM_PASSWORD` Environment variables @@ -168,7 +170,7 @@ $ docker run -d --name C8O -e CONVERTIGO_ADMIN_USER=administrator -e CONVERTIGO_ You can lock the **testplatform** by setting the account : ```console -$ docker run -d --name C8O -e CONVERTIGO_TESTPLATFORM_USER=tp_user -e CONVERTIGO_TESTPLATFORM_PASSWORD=s3cret -p 28080:28080 convertigo +$ docker run -d --name C8O -e CONVERTIGO_TESTPLATFORM_USER=tp_user -e CONVERTIGO_TESTPLATFORM_PASSWORD=s3cret -p 28080:28080 amd64/convertigo ``` ## HTTPS / SSL Configuration @@ -186,13 +188,13 @@ If you have an existing certificate and a private key, you can put them in **PEM - `chain.pem` : the optional chain of certificates not included in `cert.pem` using the PEM format ```console -$ docker run -d --name C8O -v :/ssl -p 28443:28443 convertigo +$ docker run -d --name C8O -v :/ssl -p 28443:28443 amd64/convertigo ``` If you want to expose both **HTTP** and **HTTPS** you can expose both **ports**: ```console -$ docker run -d --name C8O -v :/ssl -p 28080:28080 -p 28443:28443 convertigo +$ docker run -d --name C8O -v :/ssl -p 28080:28080 -p 28443:28443 amd64/convertigo ``` ### Provide existing certificate using environment variables @@ -207,7 +209,7 @@ If you cannot mount a volume, you can probably add environment variables of prev $ SSL_KEY_B64=$(base64 key.pem) $ SSL_CERT_B64=$(base64 cert.pem) $ SSL_CHAIN_B64=$(base64 chain.pem) -$ docker run -d --name C8O -e SSL_KEY_B64="$SSL_KEY_B64" -e SSL_CERT_B64="$SSL_CERT_B64" -e SSL_CHAIN_B64="$SSL_CHAIN_B64" -p 28443:28443 convertigo +$ docker run -d --name C8O -e SSL_KEY_B64="$SSL_KEY_B64" -e SSL_CERT_B64="$SSL_CERT_B64" -e SSL_CHAIN_B64="$SSL_CHAIN_B64" -p 28443:28443 amd64/convertigo ``` ### Generate and use a self-signed certificate @@ -217,13 +219,13 @@ If you don't have certificate file, you can dynamically generate one for the fir Use the `SSL_SELFSIGNED` environment variable to indicate for what domain you want generate certificate. ```console -$ docker run -d --name C8O -e SSL_SELFSIGNED=mycomputer -p 28443:28443 convertigo +$ docker run -d --name C8O -e SSL_SELFSIGNED=mycomputer -p 28443:28443 amd64/convertigo ``` Generated files can be retrieved if the `/ssl` mount point is configured on folder without `cert.pem` nor `key.pem`. ```console -$ docker run -d --name C8O -v :/ssl -e SSL_SELFSIGNED=mycomputer -p 28443:28443 convertigo +$ docker run -d --name C8O -v :/ssl -e SSL_SELFSIGNED=mycomputer -p 28443:28443 amd64/convertigo ``` ## `JAVA_OPTS` Environment variable @@ -233,7 +235,7 @@ Convertigo is based on a **Java** process with some defaults **JVM** options. Yo Add any **Java JVM** options such as -D[something] : ```console -$ docker run -d --name C8O -e JAVA_OPTS="-DjvmRoute=server1" -p 28080:28080 convertigo +$ docker run -d --name C8O -e JAVA_OPTS="-DjvmRoute=server1" -p 28080:28080 amd64/convertigo ``` [Here the list of convertigo specific properties](https://www.convertigo.com/documentation/latest/operating-guide/appendixes/#list-of-convertigo-java-system-properties) (don't forget the `-Dconvertigo.engine.` prefix). @@ -255,7 +257,7 @@ Convertigo tries to allocate this amount of memory in the container and will aut The default `JXMX` value is `2048` and can be defined : ```console -$ docker run -d --name C8O -e JXMX="4096" -p 28080:28080 convertigo +$ docker run -d --name C8O -e JXMX="4096" -p 28080:28080 amd64/convertigo ``` ## `COOKIE_PATH` Environment variable @@ -265,7 +267,7 @@ Convertigo generates a `JSESSIONID` to maintain the user session and stores in a The default `COOKIE_PATH` value is `/` and can be defined : ```console -$ docker run -d --name C8O -e COOKIE_PATH="/convertigo" -p 28080:28080 convertigo +$ docker run -d --name C8O -e COOKIE_PATH="/convertigo" -p 28080:28080 amd64/convertigo ``` ## `COOKIE_SECURE` Environment variable @@ -277,7 +279,7 @@ The Secure flag can be enabled by setting the `COOKIE_SECURE` environment variab The default `COOKIE_SECURE` value is `false` and can be defined : ```console -$ docker run -d --name C8O -e COOKIE_SECURE="true" -p 28080:28080 convertigo +$ docker run -d --name C8O -e COOKIE_SECURE="true" -p 28080:28080 amd64/convertigo ``` **Note :** if you have set the **SSL** configuration and you access the **HTTPS 28443** port, cookies are automatically `Secure`. @@ -289,7 +291,7 @@ Allow to configure the **SameSite** parameter for generated cookies. Can be empt The default `COOKIE_SAMESITE` value is **empty** and can be defined this way: ```console -$ docker run -d --name C8O -e COOKIE_SAMESITE=lax -p 28080:28080 convertigo +$ docker run -d --name C8O -e COOKIE_SAMESITE=lax -p 28080:28080 amd64/convertigo ``` ## `SESSION_TIMEOUT` Environment variable @@ -299,7 +301,7 @@ Allow to configure the default Tomcat **session-timeout** in minutes. This value The default `SESSION_TIMEOUT` value is **30** and can be defined this way: ```console -$ docker run -d --name C8O -e SESSION_TIMEOUT=5 -p 28080:28080 convertigo +$ docker run -d --name C8O -e SESSION_TIMEOUT=5 -p 28080:28080 amd64/convertigo ``` ## `DISABLE_SUDO` Environment variable @@ -309,7 +311,7 @@ The image includes **sudo** command line, configured to allow the **convertigo** The default `DISABLE_SUDO` value is **empty** and can be defined this way: ```console -$ docker run -d --name C8O -e DISABLE_SUDO=true -p 28080:28080 convertigo +$ docker run -d --name C8O -e DISABLE_SUDO=true -p 28080:28080 amd64/convertigo ``` ## `ENABLE_JDWP_DEBUG` Environment variable @@ -319,7 +321,7 @@ Convertigo operates using the JVM (Java Virtual Machine). To enable remote debug The default `ENABLE_JDWP_DEBUG` value is **false** and can be defined this way: ```console -$ docker run -d –name C8O -e ENABLE_JDWP_DEBUG=true -p 28080:28080 convertigo +$ docker run -d –name C8O -e ENABLE_JDWP_DEBUG=true -p 28080:28080 amd64/convertigo ``` ## Pre-configurated Docker Compose file diff --git a/couchbase/README.md b/couchbase/README.md index 7511e0a5e12c..ca600745a39a 100644 --- a/couchbase/README.md +++ b/couchbase/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `couchbase` official image](https://hub.docker.com/_/couchbase) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/couchdb/README.md b/couchdb/README.md index 5f3d22b22818..2468890dc2be 100644 --- a/couchdb/README.md +++ b/couchdb/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `couchdb` official image](https://hub.docker.com/_/couchdb) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -68,7 +70,7 @@ Store your data safely, on your own servers, or with any leading cloud provider. Starting a CouchDB instance is simple: ```console -$ docker run -d --name my-couchdb couchdb:tag +$ docker run -d --name my-couchdb amd64/couchdb:tag ``` where `my-couchdb` is the name you want to assign to your container, and `tag` is the tag specifying the CouchDB version you want. See the list above for relevant tags. @@ -86,7 +88,7 @@ $ docker run --name my-couchdb-app --link my-couchdb:couchdb -d app-that-uses-co If you want to expose the port to the outside world, run ```console -$ docker run -p 5984:5984 -d couchdb +$ docker run -p 5984:5984 -d amd64/couchdb ``` *WARNING*: Do not do this until you have established an admin user and setup permissions correctly on any databases you have created. @@ -151,7 +153,7 @@ The Docker documentation is a good starting point for understanding the differen 2. Start your `couchdb` container like this: ```bash -$ docker run --name some-%%REPO% -v /home/couchdb/data:/opt/couchdb/data -d couchdb:tag +$ docker run --name some-%%REPO% -v /home/couchdb/data:/opt/couchdb/data -d amd64/couchdb:tag ``` The `-v /home/couchdb/data:/opt/couchdb/data` part of the command mounts the `/home/couchdb/data` directory from the underlying host system as `/opt/couchdb/data` inside the container, where CouchDB by default will write its data files. @@ -171,7 +173,7 @@ The node will also start in [admin party mode](https://docs.couchdb.org/en/stabl You can also use the two environment variables `COUCHDB_USER` and `COUCHDB_PASSWORD` to set up an admin user: ```console -$ docker run -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password -d couchdb +$ docker run -e COUCHDB_USER=admin -e COUCHDB_PASSWORD=password -d amd64/couchdb ``` Note that if you are setting up a clustered CouchDB, you will want to pre-hash this password and use the identical hashed text across all nodes to ensure sessions work correctly when a load balancer is placed in front of the cluster. Hashing can be accomplished by running the container with the `/opt/couchdb/etc/local.d` directory mounted as a volume, allowing CouchDB to hash the password you set, then copying out the hashed version and using this value in the future. @@ -183,7 +185,7 @@ The CouchDB configuration is specified in `.ini` files in `/opt/couchdb/etc`. Ta If you want to use a customized CouchDB configuration, you can create your configuration file in a directory on the host machine and then mount that directory as `/opt/couchdb/etc/local.d` inside the `couchdb` container. ```console -$ docker run --name my-couchdb -v /home/couchdb/etc:/opt/couchdb/etc/local.d -d couchdb +$ docker run --name my-couchdb -v /home/couchdb/etc:/opt/couchdb/etc/local.d -d amd64/couchdb ``` The `-v /home/couchdb/etc:/opt/couchdb/etc/local.d` part of the command mounts the `/home/couchdb/etc` directory from the underlying host system as `/opt/couchdb/etc/local.d` inside the container, where CouchDB by default will write its dynamic configuration files. @@ -193,7 +195,7 @@ You can also use `couchdb` as the base image for your own couchdb instance and p Example Dockerfile: ```dockerfile -FROM couchdb +FROM amd64/couchdb COPY local.ini /opt/couchdb/etc/ ``` diff --git a/crate/README.md b/crate/README.md index cd2ed421e34b..132e709c8aac 100644 --- a/crate/README.md +++ b/crate/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `crate` official image](https://hub.docker.com/_/crate) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -77,7 +79,7 @@ CrateDB provides an [Admin UI](https://crate.io/docs/crate/admin-ui/): Spin up this Docker image like so: ```console -$ docker run --publish 4200:4200 --publish 5432:5432 crate -Cdiscovery.type=single-node +$ docker run --publish 4200:4200 --publish 5432:5432 amd64/crate -Cdiscovery.type=single-node ``` Visit the [getting started](https://crate.io/docs/crate/tutorials/en/latest/install-run/) page to see all the available download and install options. diff --git a/dart/README.md b/dart/README.md index a6eb0c1fbda0..9ec601c28b6e 100644 --- a/dart/README.md +++ b/dart/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `dart` official image](https://hub.docker.com/_/dart) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/debian/README.md b/debian/README.md index b2235ccb39f6..a8762e8f0709 100644 --- a/debian/README.md +++ b/debian/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `debian` official image](https://hub.docker.com/_/debian) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -103,9 +105,9 @@ Debian is an operating system which is composed primarily of free and open-sourc The images in this repository are intended to be as minimal as possible (because of the immutable/layered nature of containers, it's much easier to add than it is to remove). More specifically, they're built from [the "minbase" variant](https://manpages.debian.org/stable/debootstrap/debootstrap.8.en.html#variant=minbase_buildd_fakechroot), which only installs "required" packages, and thus creates the smallest possible footprint that is still "Debian" (as defined/managed by [the Release and FTP teams](https://www.debian.org/intro/organization#distribution) within the project). -The `debian:latest` tag will always point the latest stable release. Stable releases are also tagged with their version (ie, `debian:11` is an alias for `debian:bullseye`, `debian:10` is an alias for `debian:buster`, etc). +The `amd64/debian:latest` tag will always point the latest stable release. Stable releases are also tagged with their version (ie, `amd64/debian:11` is an alias for `amd64/debian:bullseye`, `amd64/debian:10` is an alias for `amd64/debian:buster`, etc). -The rolling tags (`debian:stable`, `debian:testing`, etc) use the rolling suite names in their `/etc/apt/sources.list` file (ie, `deb http://deb.debian.org/debian testing main`). +The rolling tags (`amd64/debian:stable`, `amd64/debian:testing`, etc) use the rolling suite names in their `/etc/apt/sources.list` file (ie, `deb http://deb.debian.org/debian testing main`). The mirror of choice for these images is [the deb.debian.org CDN pointer/redirector](https://deb.debian.org) so that it's as reliable as possible for the largest subset of users (and is also the default mirror for `debootstrap` as of [2016-10-20](https://anonscm.debian.org/cgit/d-i/debootstrap.git/commit/?id=9e8bc60ad1ccf3a25ce7890526b70059f3e770de)). See the [deb.debian.org homepage](https://deb.debian.org) for more information. @@ -133,7 +135,7 @@ For convenience, the SHA256 checksum (and full build command) for each of the pr # Image Variants -## `debian:-slim` +## `amd64/debian:-slim` These tags are an experiment in providing a slimmer base (removing some extra files that are normally not necessary within containers, such as man pages and documentation), and are definitely subject to change. diff --git a/docker/README.md b/docker/README.md index 7fd643494b0a..27c62034d3bb 100644 --- a/docker/README.md +++ b/docker/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `docker` official image](https://hub.docker.com/_/docker) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -34,32 +36,14 @@ WARNING: - [`28.3.0-rc.1-dind-rootless`, `28-rc-dind-rootless`, `rc-dind-rootless`](https://github.com/docker-library/docker/blob/76619ecee54053ecbbb38f1d4a8c5d40d3688b1c/28-rc/dind-rootless/Dockerfile) -- [`28.3.0-rc.1-windowsservercore-ltsc2025`, `28-rc-windowsservercore-ltsc2025`, `rc-windowsservercore-ltsc2025`](https://github.com/docker-library/docker/blob/76619ecee54053ecbbb38f1d4a8c5d40d3688b1c/28-rc/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`28.3.0-rc.1-windowsservercore-ltsc2022`, `28-rc-windowsservercore-ltsc2022`, `rc-windowsservercore-ltsc2022`](https://github.com/docker-library/docker/blob/76619ecee54053ecbbb38f1d4a8c5d40d3688b1c/28-rc/windows/windowsservercore-ltsc2022/Dockerfile) - - [`28.2.2-cli`, `28.2-cli`, `28-cli`, `cli`, `28.2.2-cli-alpine3.22`](https://github.com/docker-library/docker/blob/46b52b3a685ae16281bb08c1df1622f0a5b3ae24/28/cli/Dockerfile) - [`28.2.2-dind`, `28.2-dind`, `28-dind`, `dind`, `28.2.2-dind-alpine3.22`, `28.2.2`, `28.2`, `28`, `latest`, `28.2.2-alpine3.22`](https://github.com/docker-library/docker/blob/e9f3fbf07fb73d5266464f898f71510f25fa3266/28/dind/Dockerfile) - [`28.2.2-dind-rootless`, `28.2-dind-rootless`, `28-dind-rootless`, `dind-rootless`](https://github.com/docker-library/docker/blob/ac216a48589a02162b04badf29b22a09ca5c9043/28/dind-rootless/Dockerfile) -- [`28.2.2-windowsservercore-ltsc2025`, `28.2-windowsservercore-ltsc2025`, `28-windowsservercore-ltsc2025`, `windowsservercore-ltsc2025`](https://github.com/docker-library/docker/blob/46b52b3a685ae16281bb08c1df1622f0a5b3ae24/28/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`28.2.2-windowsservercore-ltsc2022`, `28.2-windowsservercore-ltsc2022`, `28-windowsservercore-ltsc2022`, `windowsservercore-ltsc2022`](https://github.com/docker-library/docker/blob/46b52b3a685ae16281bb08c1df1622f0a5b3ae24/28/windows/windowsservercore-ltsc2022/Dockerfile) - ## Shared Tags -- `28.3.0-rc.1-windowsservercore`, `28-rc-windowsservercore`, `rc-windowsservercore`: - - - [`28.3.0-rc.1-windowsservercore-ltsc2025`](https://github.com/docker-library/docker/blob/76619ecee54053ecbbb38f1d4a8c5d40d3688b1c/28-rc/windows/windowsservercore-ltsc2025/Dockerfile) - - [`28.3.0-rc.1-windowsservercore-ltsc2022`](https://github.com/docker-library/docker/blob/76619ecee54053ecbbb38f1d4a8c5d40d3688b1c/28-rc/windows/windowsservercore-ltsc2022/Dockerfile) - -- `28.2.2-windowsservercore`, `28.2-windowsservercore`, `28-windowsservercore`, `windowsservercore`: - - - [`28.2.2-windowsservercore-ltsc2025`](https://github.com/docker-library/docker/blob/46b52b3a685ae16281bb08c1df1622f0a5b3ae24/28/windows/windowsservercore-ltsc2025/Dockerfile) - - [`28.2.2-windowsservercore-ltsc2022`](https://github.com/docker-library/docker/blob/46b52b3a685ae16281bb08c1df1622f0a5b3ae24/28/windows/windowsservercore-ltsc2022/Dockerfile) - # Quick reference (cont.) - **Where to file issues**: @@ -113,7 +97,7 @@ Inside the directory specified by `DOCKER_TLS_CERTDIR`, the entrypoint scripts w In order to make use of this functionality from a "client" container, at least the `client` subdirectory of the `$DOCKER_TLS_CERTDIR` directory needs to be shared (as illustrated in the following examples). -To disable this image behavior, simply override the container command or entrypoint to run `dockerd` directly (`... docker:dind dockerd ...` or `... --entrypoint dockerd docker:dind ...`). +To disable this image behavior, simply override the container command or entrypoint to run `dockerd` directly (`... amd64/docker:dind dockerd ...` or `... --entrypoint dockerd amd64/docker:dind ...`). ## Start a daemon instance @@ -123,7 +107,7 @@ $ docker run --privileged --name some-docker -d \ -e DOCKER_TLS_CERTDIR=/certs \ -v some-docker-certs-ca:/certs/ca \ -v some-docker-certs-client:/certs/client \ - docker:dind + amd64/docker:dind ``` **Note:** `--privileged` is required for Docker-in-Docker to function properly, but it should be used with care as it provides full access to the host environment, as explained [in the relevant section of the Docker documentation](https://docs.docker.com/engine/reference/run/#runtime-privilege-and-linux-capabilities). @@ -134,7 +118,7 @@ $ docker run --privileged --name some-docker -d \ $ docker run --rm --network some-network \ -e DOCKER_TLS_CERTDIR=/certs \ -v some-docker-certs-client:/certs/client:ro \ - docker:latest version + amd64/docker:latest version Client: Docker Engine - Community Version: 18.09.8 API version: 1.39 @@ -159,7 +143,7 @@ Server: Docker Engine - Community $ docker run -it --rm --network some-network \ -e DOCKER_TLS_CERTDIR=/certs \ -v some-docker-certs-client:/certs/client:ro \ - docker:latest sh + amd64/docker:latest sh / # docker version Client: Docker Engine - Community Version: 18.09.8 @@ -185,7 +169,7 @@ Server: Docker Engine - Community $ docker run --rm --network some-network \ -e DOCKER_TLS_CERTDIR=/certs \ -v some-docker-certs-client:/certs/client:ro \ - docker:latest info + amd64/docker:latest info Containers: 0 Running: 0 Paused: 0 @@ -237,7 +221,7 @@ WARNING: bridge-nf-call-ip6tables is disabled ``` ```console -$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock docker:latest version +$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock amd64/docker:latest version Client: Docker Engine - Community Version: 18.09.8 API version: 1.39 @@ -266,7 +250,7 @@ $ docker run --privileged --name some-docker -d \ -e DOCKER_TLS_CERTDIR=/certs \ -v some-docker-certs-ca:/certs/ca \ -v some-docker-certs-client:/certs/client \ - docker:dind --storage-driver overlay2 + amd64/docker:dind --storage-driver overlay2 ``` ## Runtime Settings Considerations @@ -281,7 +265,7 @@ $ docker run --privileged --name some-docker -d \ --ulimit core=-1 \ --pids-limit -1 \ --oom-score-adj -500 \ - docker:dind + amd64/docker:dind ``` Some of these will not be supported based on the settings on the host's `dockerd`, such as `--ulimit nofile=-1`, giving errors that look like `error setting rlimit type 7: operation not permitted`, and some may inherit sane values from the host `dockerd` instance or may not apply for your usage of Docker-in-Docker (for example, you likely want to set `--oom-score-adj` to a value that's higher than `dockerd` on the host so that your Docker-in-Docker instance is killed before the host Docker instance is). @@ -299,20 +283,20 @@ The Docker documentation is a good starting point for understanding the differen 2. Start your `docker` container like this: ```console - $ docker run --privileged --name some-docker -v /my/own/var-lib-docker:/var/lib/docker -d docker:dind + $ docker run --privileged --name some-docker -v /my/own/var-lib-docker:/var/lib/docker -d amd64/docker:dind ``` The `-v /my/own/var-lib-docker:/var/lib/docker` part of the command mounts the `/my/own/var-lib-docker` directory from the underlying host system as `/var/lib/docker` inside the container, where Docker by default will write its data files. # Image Variants -The `docker` images come in many flavors, each designed for a specific use case. +The `amd64/docker` images come in many flavors, each designed for a specific use case. -## `docker:` +## `amd64/docker:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `docker:-rootless` +## `amd64/docker:-rootless` For more information about using the experimental "rootless" image variants, see [docker-library/docker#174](https://github.com/docker-library/docker/pull/174). @@ -321,7 +305,7 @@ For more information about using the experimental "rootless" image variants, see Basic example usage: ```console -$ docker run -d --name some-docker --privileged docker:dind-rootless +$ docker run -d --name some-docker --privileged amd64/docker:dind-rootless $ docker logs --tail=3 some-docker # to verify the daemon has finished generating TLS certificates and is listening successfully time="xxx" level=info msg="Daemon has completed initialization" time="xxx" level=info msg="API listen on /run/user/1000/docker.sock" @@ -334,7 +318,7 @@ $ docker exec -it some-docker docker-entrypoint.sh sh # using "docker-entrypoint To run with a different UID/GID than the one baked into the image, modify `/etc/passwd`, `/etc/group`, and filesystem permissions (especially for the `rootless` user's home directory) as appropriate; for example: ```dockerfile -FROM docker:dind-rootless +FROM amd64/docker:dind-rootless USER root RUN set -eux; \ sed -i -e 's/^rootless:x:1000:1000:/rootless:x:1234:5678:/' /etc/passwd; \ @@ -343,10 +327,6 @@ RUN set -eux; \ USER rootless ``` -## `docker:-windowsservercore` - -Unfortunately, Windows does not support nested containers, so this image variant only contains the client (intended for use against an existing Docker engine, ala `-v //./pipe/docker_engine://./pipe/docker_engine`). - # License View [license information](https://github.com/docker/docker/blob/eb7b2ed6bbe3fbef588116d362ce595d6e35fc43/LICENSE) for the software contained in this image. diff --git a/drupal/README.md b/drupal/README.md index 4c681086a93a..30a10c684de2 100644 --- a/drupal/README.md +++ b/drupal/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `drupal` official image](https://hub.docker.com/_/drupal) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -188,13 +190,13 @@ Drupal is a free and open-source content-management framework written in PHP and The basic pattern for starting a `drupal` instance is: ```console -$ docker run --name some-drupal -d drupal +$ docker run --name some-drupal -d amd64/drupal ``` If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used: ```console -$ docker run --name some-drupal -p 8080:80 -d drupal +$ docker run --name some-drupal -p 8080:80 -d amd64/drupal ``` Then, access it via `http://localhost:8080` or `http://host-ip:8080` in a browser. @@ -248,7 +250,7 @@ There is consensus that `/var/www/html/modules`, `/var/www/html/profiles`, and ` If using bind-mounts, one way to accomplish pre-seeding your local `sites` directory would be something like the following: ```console -$ docker run --rm drupal tar -cC /var/www/html/sites . | tar -xC /path/on/host/sites +$ docker run --rm amd64/drupal tar -cC /var/www/html/sites . | tar -xC /path/on/host/sites ``` This can then be bind-mounted into a new container: @@ -259,20 +261,20 @@ $ docker run --name some-drupal --network some-network -d \ -v /path/on/host/profiles:/var/www/html/profiles \ -v /path/on/host/sites:/var/www/html/sites \ -v /path/on/host/themes:/var/www/html/themes \ - drupal + amd64/drupal ``` Another solution using Docker Volumes: ```console $ docker volume create drupal-sites -$ docker run --rm -v drupal-sites:/temporary/sites drupal cp -aRT /var/www/html/sites /temporary/sites +$ docker run --rm -v drupal-sites:/temporary/sites amd64/drupal cp -aRT /var/www/html/sites /temporary/sites $ docker run --name some-drupal --network some-network -d \ -v drupal-modules:/var/www/html/modules \ -v drupal-profiles:/var/www/html/profiles \ -v drupal-sites:/var/www/html/sites \ -v drupal-themes:/var/www/html/themes \ - drupal + amd64/drupal ``` ## ... via [`docker compose`](https://github.com/docker/compose) @@ -332,15 +334,15 @@ See [the "Running as an arbitrary user" section of the `php` image documentation # Image Variants -The `drupal` images come in many flavors, each designed for a specific use case. +The `amd64/drupal` images come in many flavors, each designed for a specific use case. -## `drupal:` +## `amd64/drupal:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. Some of these tags may have names like bookworm or bullseye in them. These are the suite code names for releases of [Debian](https://wiki.debian.org/DebianReleases) and indicate which release the image is based on. If your image needs to install any additional packages beyond what comes with the image, you'll likely want to specify one of these explicitly to minimize breakage when there are new releases of Debian. -## `drupal:-fpm` +## `amd64/drupal:-fpm` This variant contains [PHP's FastCGI Process Manager (FPM)](https://www.php.net/fpm), which is the recommended FastCGI implementation for PHP. diff --git a/eclipse-mosquitto/README.md b/eclipse-mosquitto/README.md index 89851826786b..88233f1cf5e3 100644 --- a/eclipse-mosquitto/README.md +++ b/eclipse-mosquitto/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `eclipse-mosquitto` official image](https://hub.docker.com/_/eclipse-mosquitto) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -74,7 +76,7 @@ It is suggested to mirror this structure for your local configuration. When running the image, the default configuration values are used. To use a custom configuration file, create your mosquitto.conf in `$PWD/mosquitto/config/mosquitto.conf`, then mount the config directory to `/mosquitto/config`. ```console -$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" eclipse-mosquitto +$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" amd64/eclipse-mosquitto ``` Configuration can be changed to: @@ -95,13 +97,13 @@ i.e. add the following to `mosquitto.conf`: Run a container using the new image: ```console -$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" -v /mosquitto/data -v /mosquitto/log eclipse-mosquitto +$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" -v /mosquitto/data -v /mosquitto/log amd64/eclipse-mosquitto ``` or: ```console -$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" -v "$PWD/mosquitto/data:/mosquitto/data" -v "$PWD/mosquitto/log:/mosquitto/log" eclipse-mosquitto +$ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" -v "$PWD/mosquitto/data:/mosquitto/data" -v "$PWD/mosquitto/log:/mosquitto/log" amd64/eclipse-mosquitto ``` **Note**: if the mosquitto configuration (mosquitto.conf) was modified to use non-default ports, the docker run command will need to be updated to expose the ports that have been configured. @@ -109,7 +111,7 @@ $ docker run -it -p 1883:1883 -v "$PWD/mosquitto/config:/mosquitto/config" -v "$ For example, if you use port 1883 and port 8080: ```console -$ docker run -it -p 1883:1883 -p 8080:8080 -v "$PWD/mosquitto/config:/mosquitto/config" eclipse-mosquitto +$ docker run -it -p 1883:1883 -p 8080:8080 -v "$PWD/mosquitto/config:/mosquitto/config" amd64/eclipse-mosquitto ``` # License diff --git a/eclipse-temurin/README.md b/eclipse-temurin/README.md index a61018db8296..84559330b765 100644 --- a/eclipse-temurin/README.md +++ b/eclipse-temurin/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `eclipse-temurin` official image](https://hub.docker.com/_/eclipse-temurin) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -40,14 +42,6 @@ WARNING: - [`8u452-b09-jdk-ubi9-minimal`, `8-jdk-ubi9-minimal`, `8-ubi9-minimal`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/ubi/ubi9-minimal/Dockerfile) -- [`8u452-b09-jdk-windowsservercore-ltsc2025`, `8-jdk-windowsservercore-ltsc2025`, `8-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`8u452-b09-jdk-nanoserver-ltsc2025`, `8-jdk-nanoserver-ltsc2025`, `8-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/nanoserver-ltsc2025/Dockerfile) - -- [`8u452-b09-jdk-windowsservercore-ltsc2022`, `8-jdk-windowsservercore-ltsc2022`, `8-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`8u452-b09-jdk-nanoserver-ltsc2022`, `8-jdk-nanoserver-ltsc2022`, `8-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/nanoserver-ltsc2022/Dockerfile) - - [`8u452-b09-jre-alpine-3.20`, `8-jre-alpine-3.20`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/alpine/3.20/Dockerfile) - [`8u452-b09-jre-alpine-3.21`, `8-jre-alpine-3.21`, `8u452-b09-jre-alpine`, `8-jre-alpine`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/alpine/3.21/Dockerfile) @@ -60,14 +54,6 @@ WARNING: - [`8u452-b09-jre-ubi9-minimal`, `8-jre-ubi9-minimal`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/ubi/ubi9-minimal/Dockerfile) -- [`8u452-b09-jre-windowsservercore-ltsc2025`, `8-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`8u452-b09-jre-nanoserver-ltsc2025`, `8-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/nanoserver-ltsc2025/Dockerfile) - -- [`8u452-b09-jre-windowsservercore-ltsc2022`, `8-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`8u452-b09-jre-nanoserver-ltsc2022`, `8-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/nanoserver-ltsc2022/Dockerfile) - - [`11.0.27_6-jdk-alpine-3.20`, `11-jdk-alpine-3.20`, `11-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/alpine/3.20/Dockerfile) - [`11.0.27_6-jdk-alpine-3.21`, `11-jdk-alpine-3.21`, `11-alpine-3.21`, `11.0.27_6-jdk-alpine`, `11-jdk-alpine`, `11-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/alpine/3.21/Dockerfile) @@ -80,14 +66,6 @@ WARNING: - [`11.0.27_6-jdk-ubi9-minimal`, `11-jdk-ubi9-minimal`, `11-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/ubi/ubi9-minimal/Dockerfile) -- [`11.0.27_6-jdk-windowsservercore-ltsc2025`, `11-jdk-windowsservercore-ltsc2025`, `11-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`11.0.27_6-jdk-nanoserver-ltsc2025`, `11-jdk-nanoserver-ltsc2025`, `11-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/nanoserver-ltsc2025/Dockerfile) - -- [`11.0.27_6-jdk-windowsservercore-ltsc2022`, `11-jdk-windowsservercore-ltsc2022`, `11-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`11.0.27_6-jdk-nanoserver-ltsc2022`, `11-jdk-nanoserver-ltsc2022`, `11-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/nanoserver-ltsc2022/Dockerfile) - - [`11.0.27_6-jre-alpine-3.20`, `11-jre-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/alpine/3.20/Dockerfile) - [`11.0.27_6-jre-alpine-3.21`, `11-jre-alpine-3.21`, `11.0.27_6-jre-alpine`, `11-jre-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/alpine/3.21/Dockerfile) @@ -100,14 +78,6 @@ WARNING: - [`11.0.27_6-jre-ubi9-minimal`, `11-jre-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/ubi/ubi9-minimal/Dockerfile) -- [`11.0.27_6-jre-windowsservercore-ltsc2025`, `11-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`11.0.27_6-jre-nanoserver-ltsc2025`, `11-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/nanoserver-ltsc2025/Dockerfile) - -- [`11.0.27_6-jre-windowsservercore-ltsc2022`, `11-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`11.0.27_6-jre-nanoserver-ltsc2022`, `11-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/nanoserver-ltsc2022/Dockerfile) - - [`17.0.15_6-jdk-alpine-3.20`, `17-jdk-alpine-3.20`, `17-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/alpine/3.20/Dockerfile) - [`17.0.15_6-jdk-alpine-3.21`, `17-jdk-alpine-3.21`, `17-alpine-3.21`, `17.0.15_6-jdk-alpine`, `17-jdk-alpine`, `17-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/alpine/3.21/Dockerfile) @@ -120,14 +90,6 @@ WARNING: - [`17.0.15_6-jdk-ubi9-minimal`, `17-jdk-ubi9-minimal`, `17-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/ubi/ubi9-minimal/Dockerfile) -- [`17.0.15_6-jdk-windowsservercore-ltsc2025`, `17-jdk-windowsservercore-ltsc2025`, `17-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`17.0.15_6-jdk-nanoserver-ltsc2025`, `17-jdk-nanoserver-ltsc2025`, `17-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/nanoserver-ltsc2025/Dockerfile) - -- [`17.0.15_6-jdk-windowsservercore-ltsc2022`, `17-jdk-windowsservercore-ltsc2022`, `17-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`17.0.15_6-jdk-nanoserver-ltsc2022`, `17-jdk-nanoserver-ltsc2022`, `17-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/nanoserver-ltsc2022/Dockerfile) - - [`17.0.15_6-jre-alpine-3.20`, `17-jre-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/alpine/3.20/Dockerfile) - [`17.0.15_6-jre-alpine-3.21`, `17-jre-alpine-3.21`, `17.0.15_6-jre-alpine`, `17-jre-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/alpine/3.21/Dockerfile) @@ -140,14 +102,6 @@ WARNING: - [`17.0.15_6-jre-ubi9-minimal`, `17-jre-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/ubi/ubi9-minimal/Dockerfile) -- [`17.0.15_6-jre-windowsservercore-ltsc2025`, `17-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`17.0.15_6-jre-nanoserver-ltsc2025`, `17-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/nanoserver-ltsc2025/Dockerfile) - -- [`17.0.15_6-jre-windowsservercore-ltsc2022`, `17-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`17.0.15_6-jre-nanoserver-ltsc2022`, `17-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/nanoserver-ltsc2022/Dockerfile) - - [`21.0.7_6-jdk-alpine-3.20`, `21-jdk-alpine-3.20`, `21-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/alpine/3.20/Dockerfile) - [`21.0.7_6-jdk-alpine-3.21`, `21-jdk-alpine-3.21`, `21-alpine-3.21`, `21.0.7_6-jdk-alpine`, `21-jdk-alpine`, `21-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/alpine/3.21/Dockerfile) @@ -158,14 +112,6 @@ WARNING: - [`21.0.7_6-jdk-ubi9-minimal`, `21-jdk-ubi9-minimal`, `21-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/ubi/ubi9-minimal/Dockerfile) -- [`21.0.7_6-jdk-windowsservercore-ltsc2025`, `21-jdk-windowsservercore-ltsc2025`, `21-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`21.0.7_6-jdk-nanoserver-ltsc2025`, `21-jdk-nanoserver-ltsc2025`, `21-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/nanoserver-ltsc2025/Dockerfile) - -- [`21.0.7_6-jdk-windowsservercore-ltsc2022`, `21-jdk-windowsservercore-ltsc2022`, `21-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`21.0.7_6-jdk-nanoserver-ltsc2022`, `21-jdk-nanoserver-ltsc2022`, `21-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/nanoserver-ltsc2022/Dockerfile) - - [`21.0.7_6-jre-alpine-3.20`, `21-jre-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/alpine/3.20/Dockerfile) - [`21.0.7_6-jre-alpine-3.21`, `21-jre-alpine-3.21`, `21.0.7_6-jre-alpine`, `21-jre-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/alpine/3.21/Dockerfile) @@ -176,14 +122,6 @@ WARNING: - [`21.0.7_6-jre-ubi9-minimal`, `21-jre-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/ubi/ubi9-minimal/Dockerfile) -- [`21.0.7_6-jre-windowsservercore-ltsc2025`, `21-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`21.0.7_6-jre-nanoserver-ltsc2025`, `21-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/nanoserver-ltsc2025/Dockerfile) - -- [`21.0.7_6-jre-windowsservercore-ltsc2022`, `21-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`21.0.7_6-jre-nanoserver-ltsc2022`, `21-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/nanoserver-ltsc2022/Dockerfile) - - [`24.0.1_9-jdk-alpine-3.20`, `24-jdk-alpine-3.20`, `24-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/alpine/3.20/Dockerfile) - [`24.0.1_9-jdk-alpine-3.21`, `24-jdk-alpine-3.21`, `24-alpine-3.21`, `24.0.1_9-jdk-alpine`, `24-jdk-alpine`, `24-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/alpine/3.21/Dockerfile) @@ -192,14 +130,6 @@ WARNING: - [`24.0.1_9-jdk-ubi9-minimal`, `24-jdk-ubi9-minimal`, `24-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/ubi/ubi9-minimal/Dockerfile) -- [`24.0.1_9-jdk-windowsservercore-ltsc2025`, `24-jdk-windowsservercore-ltsc2025`, `24-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`24.0.1_9-jdk-nanoserver-ltsc2025`, `24-jdk-nanoserver-ltsc2025`, `24-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/nanoserver-ltsc2025/Dockerfile) - -- [`24.0.1_9-jdk-windowsservercore-ltsc2022`, `24-jdk-windowsservercore-ltsc2022`, `24-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`24.0.1_9-jdk-nanoserver-ltsc2022`, `24-jdk-nanoserver-ltsc2022`, `24-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/nanoserver-ltsc2022/Dockerfile) - - [`24.0.1_9-jre-alpine-3.20`, `24-jre-alpine-3.20`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/alpine/3.20/Dockerfile) - [`24.0.1_9-jre-alpine-3.21`, `24-jre-alpine-3.21`, `24.0.1_9-jre-alpine`, `24-jre-alpine`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/alpine/3.21/Dockerfile) @@ -208,175 +138,47 @@ WARNING: - [`24.0.1_9-jre-ubi9-minimal`, `24-jre-ubi9-minimal`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/ubi/ubi9-minimal/Dockerfile) -- [`24.0.1_9-jre-windowsservercore-ltsc2025`, `24-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`24.0.1_9-jre-nanoserver-ltsc2025`, `24-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/nanoserver-ltsc2025/Dockerfile) - -- [`24.0.1_9-jre-windowsservercore-ltsc2022`, `24-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`24.0.1_9-jre-nanoserver-ltsc2022`, `24-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/nanoserver-ltsc2022/Dockerfile) - ## Shared Tags - `8u452-b09-jdk`, `8-jdk`, `8`: - [`8u452-b09-jdk-noble`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/ubuntu/noble/Dockerfile) - - [`8u452-b09-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`8u452-b09-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `8u452-b09-jdk-windowsservercore`, `8-jdk-windowsservercore`, `8-windowsservercore`: - - - [`8u452-b09-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`8u452-b09-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `8u452-b09-jdk-nanoserver`, `8-jdk-nanoserver`, `8-nanoserver`: - - - [`8u452-b09-jdk-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/nanoserver-ltsc2025/Dockerfile) - - [`8u452-b09-jdk-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jdk/windows/nanoserver-ltsc2022/Dockerfile) - `8u452-b09-jre`, `8-jre`: - [`8u452-b09-jre-noble`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/ubuntu/noble/Dockerfile) - - [`8u452-b09-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`8u452-b09-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `8u452-b09-jre-windowsservercore`, `8-jre-windowsservercore`: - - - [`8u452-b09-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`8u452-b09-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `8u452-b09-jre-nanoserver`, `8-jre-nanoserver`: - - - [`8u452-b09-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/nanoserver-ltsc2025/Dockerfile) - - [`8u452-b09-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/4890fb4638e68c037c00c4a28c7587e0b5c96fcf/8/jre/windows/nanoserver-ltsc2022/Dockerfile) - `11.0.27_6-jdk`, `11-jdk`, `11`: - [`11.0.27_6-jdk-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/ubuntu/noble/Dockerfile) - - [`11.0.27_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`11.0.27_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `11.0.27_6-jdk-windowsservercore`, `11-jdk-windowsservercore`, `11-windowsservercore`: - - - [`11.0.27_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`11.0.27_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `11.0.27_6-jdk-nanoserver`, `11-jdk-nanoserver`, `11-nanoserver`: - - - [`11.0.27_6-jdk-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/nanoserver-ltsc2025/Dockerfile) - - [`11.0.27_6-jdk-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jdk/windows/nanoserver-ltsc2022/Dockerfile) - `11.0.27_6-jre`, `11-jre`: - [`11.0.27_6-jre-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/ubuntu/noble/Dockerfile) - - [`11.0.27_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`11.0.27_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `11.0.27_6-jre-windowsservercore`, `11-jre-windowsservercore`: - - - [`11.0.27_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`11.0.27_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `11.0.27_6-jre-nanoserver`, `11-jre-nanoserver`: - - - [`11.0.27_6-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/nanoserver-ltsc2025/Dockerfile) - - [`11.0.27_6-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/11/jre/windows/nanoserver-ltsc2022/Dockerfile) - `17.0.15_6-jdk`, `17-jdk`, `17`: - [`17.0.15_6-jdk-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/ubuntu/noble/Dockerfile) - - [`17.0.15_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`17.0.15_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `17.0.15_6-jdk-windowsservercore`, `17-jdk-windowsservercore`, `17-windowsservercore`: - - - [`17.0.15_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`17.0.15_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `17.0.15_6-jdk-nanoserver`, `17-jdk-nanoserver`, `17-nanoserver`: - - - [`17.0.15_6-jdk-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/nanoserver-ltsc2025/Dockerfile) - - [`17.0.15_6-jdk-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jdk/windows/nanoserver-ltsc2022/Dockerfile) - `17.0.15_6-jre`, `17-jre`: - [`17.0.15_6-jre-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/ubuntu/noble/Dockerfile) - - [`17.0.15_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`17.0.15_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `17.0.15_6-jre-windowsservercore`, `17-jre-windowsservercore`: - - - [`17.0.15_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`17.0.15_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `17.0.15_6-jre-nanoserver`, `17-jre-nanoserver`: - - - [`17.0.15_6-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/nanoserver-ltsc2025/Dockerfile) - - [`17.0.15_6-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/17/jre/windows/nanoserver-ltsc2022/Dockerfile) - `21.0.7_6-jdk`, `21-jdk`, `21`, `latest`: - [`21.0.7_6-jdk-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/ubuntu/noble/Dockerfile) - - [`21.0.7_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`21.0.7_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `21.0.7_6-jdk-windowsservercore`, `21-jdk-windowsservercore`, `21-windowsservercore`: - - - [`21.0.7_6-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`21.0.7_6-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `21.0.7_6-jdk-nanoserver`, `21-jdk-nanoserver`, `21-nanoserver`: - - - [`21.0.7_6-jdk-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/nanoserver-ltsc2025/Dockerfile) - - [`21.0.7_6-jdk-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jdk/windows/nanoserver-ltsc2022/Dockerfile) - `21.0.7_6-jre`, `21-jre`: - [`21.0.7_6-jre-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/ubuntu/noble/Dockerfile) - - [`21.0.7_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`21.0.7_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `21.0.7_6-jre-windowsservercore`, `21-jre-windowsservercore`: - - - [`21.0.7_6-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`21.0.7_6-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `21.0.7_6-jre-nanoserver`, `21-jre-nanoserver`: - - - [`21.0.7_6-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/nanoserver-ltsc2025/Dockerfile) - - [`21.0.7_6-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/21/jre/windows/nanoserver-ltsc2022/Dockerfile) - `24.0.1_9-jdk`, `24-jdk`, `24`: - [`24.0.1_9-jdk-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/ubuntu/noble/Dockerfile) - - [`24.0.1_9-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`24.0.1_9-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `24.0.1_9-jdk-windowsservercore`, `24-jdk-windowsservercore`, `24-windowsservercore`: - - - [`24.0.1_9-jdk-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2025/Dockerfile) - - [`24.0.1_9-jdk-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/windowsservercore-ltsc2022/Dockerfile) - -- `24.0.1_9-jdk-nanoserver`, `24-jdk-nanoserver`, `24-nanoserver`: - - - [`24.0.1_9-jdk-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/nanoserver-ltsc2025/Dockerfile) - - [`24.0.1_9-jdk-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jdk/windows/nanoserver-ltsc2022/Dockerfile) - `24.0.1_9-jre`, `24-jre`: - [`24.0.1_9-jre-noble`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/ubuntu/noble/Dockerfile) - - [`24.0.1_9-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`24.0.1_9-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `24.0.1_9-jre-windowsservercore`, `24-jre-windowsservercore`: - - - [`24.0.1_9-jre-windowsservercore-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2025/Dockerfile) - - [`24.0.1_9-jre-windowsservercore-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/windowsservercore-ltsc2022/Dockerfile) - -- `24.0.1_9-jre-nanoserver`, `24-jre-nanoserver`: - - - [`24.0.1_9-jre-nanoserver-ltsc2025`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/nanoserver-ltsc2025/Dockerfile) - - [`24.0.1_9-jre-nanoserver-ltsc2022`](https://github.com/adoptium/containers/blob/30d5f31fe4d1360da008ef3205ec3d5bf7e5b53d/24/jre/windows/nanoserver-ltsc2022/Dockerfile) # Quick reference (cont.) @@ -418,7 +220,7 @@ Yes, it's possible for all image flavors except for Windows-based images. The fo You need to put your CA certificates into `/certificates` directory inside the container (e.g. by using a volume) and opt-in into CA certificate processing by setting the environment variable `USE_SYSTEM_CA_CERTS` on the container to any value (if you are overriding the entrypoint script, please make sure you call `/__cacert_entrypoint.sh` to enable the processing). Using Docker CLI this might look like this: ```console -$ docker run -v $(pwd)/certs:/certificates/ -e USE_SYSTEM_CA_CERTS=1 eclipse-temurin:21 +$ docker run -v $(pwd)/certs:/certificates/ -e USE_SYSTEM_CA_CERTS=1 amd64/eclipse-temurin:21 ``` When run like this, your certificates will get added to both the JVM truststore and to the system CA store (e.g. for use by `curl` and other CLI tools). However, if you are running your containers in a restricted-by-default environment (such as Red Hat OpenShift), there will be some small differences: @@ -434,7 +236,7 @@ While this feature has been tested in multiple scenarios, there is always a chan To run a pre-built jar file with the latest OpenJDK 21, use the following Dockerfile: ```dockerfile -FROM eclipse-temurin:21 +FROM amd64/eclipse-temurin:21 RUN mkdir /opt/app COPY japp.jar /opt/app CMD ["java", "-jar", "/opt/app/japp.jar"] @@ -455,7 +257,7 @@ If you are using a distribution that we don't provide an image for you can copy # Example FROM ENV JAVA_HOME=/opt/java/openjdk -COPY --from=eclipse-temurin:21 $JAVA_HOME $JAVA_HOME +COPY --from=amd64/eclipse-temurin:21 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" ``` @@ -465,7 +267,7 @@ On OpenJDK 21+, a JRE can be generated using `jlink`, see the following Dockerfi ```dockerfile # Example of custom Java runtime using jlink in a multi-stage container build -FROM eclipse-temurin:21 as jre-build +FROM amd64/eclipse-temurin:21 as jre-build # Create a custom Java runtime RUN $JAVA_HOME/bin/jlink \ @@ -491,7 +293,7 @@ CMD ["java", "-jar", "/opt/app/japp.jar"] If you want to place the jar file on the host file system instead of inside the container, you can mount the host path onto the container by using the following commands: ```dockerfile -FROM eclipse-temurin:21.0.2_13-jdk +FROM amd64/eclipse-temurin:21.0.2_13-jdk CMD ["java", "-jar", "/opt/app/japp.jar"] ``` @@ -502,15 +304,15 @@ docker run -it -v /path/on/host/system/jars:/opt/app japp # Image Variants -The `eclipse-temurin` images come in many flavors, each designed for a specific use case. +The `amd64/eclipse-temurin` images come in many flavors, each designed for a specific use case. -## `eclipse-temurin:` +## `amd64/eclipse-temurin:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. Some of these tags may have names like jammy or noble in them. These are the suite code names for releases of [Ubuntu](https://wiki.ubuntu.com/Releases) and indicate which release the image is based on. If your image needs to install any additional packages beyond what comes with the image, you'll likely want to specify one of these explicitly to minimize breakage when there are new releases of Ubuntu. -## `eclipse-temurin:-alpine` +## `amd64/eclipse-temurin:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. @@ -518,15 +320,6 @@ This variant is useful when final image size being as small as possible is your To minimize image size, it's uncommon for additional related tools (such as `git` or `bash`) to be included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar). -## `eclipse-temurin:-windowsservercore` - -This image is based on [Windows Server Core (`microsoft/windowsservercore`)](https://hub.docker.com/r/microsoft/windowsservercore/). As such, it only works in places which that image does, such as Windows 10 Professional/Enterprise (Anniversary Edition) or Windows Server 2016. - -For information about how to get Docker running on Windows, please see the relevant "Quick Start" guide provided by Microsoft: - -- [Windows Server Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_server) -- [Windows 10 Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_10) - # License The Dockerfiles and associated scripts are licensed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0.html). diff --git a/eggdrop/README.md b/eggdrop/README.md index 8e633d6d041b..20cf16bdc659 100644 --- a/eggdrop/README.md +++ b/eggdrop/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `eggdrop` official image](https://hub.docker.com/_/eggdrop) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -62,7 +64,7 @@ Eggdrop is the world's most popular Open Source IRC bot, designed for flexibilit To run this container the first time, you'll need to pass in, at minimum, a nickname and server via Environmental Variables. At minimum, a docker run command similar to ```console -$ docker run -ti -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/for/host/data:/home/eggdrop/eggdrop/data eggdrop +$ docker run -ti -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/for/host/data:/home/eggdrop/eggdrop/data amd64/eggdrop ``` should be used. This will modify the appropriate values within the config file, then start your bot with the nickname FooBot and connect it to irc.libera.chat. These variables are only needed for your first run- after the first use, you can edit the config file directly. Additional configuration options are listed in the following sections. @@ -116,13 +118,13 @@ If you use a config file from a previous eggdrop install (ie, you don't use the To do this, start your container with something similar to ```console -$ docker run -i -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d eggdrop +$ docker run -i -e NICK=FooBot -e SERVER=irc.libera.chat -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d amd64/eggdrop ``` If you provide your own config file, place it in the data dir and specify it as the argument to the docker container: ```console -$ docker run -i -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d eggdrop mybot.conf +$ docker run -i -v /path/to/eggdrop/files:/home/eggdrop/eggdrop/data -d amd64/eggdrop mybot.conf ``` Any config file used with docker MUST end in .conf, such as eggdrop.conf or mybot.conf diff --git a/elasticsearch/README.md b/elasticsearch/README.md index 79e87bb2640e..62a2ee6648d0 100644 --- a/elasticsearch/README.md +++ b/elasticsearch/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `elasticsearch` official image](https://hub.docker.com/_/elasticsearch) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/elixir/README.md b/elixir/README.md index fc468ab1687e..3e4c15bff74e 100644 --- a/elixir/README.md +++ b/elixir/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `elixir` official image](https://hub.docker.com/_/elixir) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -166,14 +168,14 @@ Elixir leverages the Erlang VM, known for running low-latency, distributed and f ## Run it as the REPL ```console -➸ docker run -it --rm elixir +➸ docker run -it --rm amd64/elixir Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] Interactive Elixir (1.2.1) - press Ctrl+C to exit (type h() ENTER for help) iex(1)> System.version "1.2.1" iex(2)> -➸ docker run -it --rm -h elixir.local elixir iex --sname snode +➸ docker run -it --rm -h elixir.local amd64/elixir iex --sname snode Erlang/OTP 18 [erts-7.2.1] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] Interactive Elixir (1.2.1) - press Ctrl+C to exit (type h() ENTER for help) @@ -187,22 +189,22 @@ iex(snode@elixir)2> :c.uptime ## Run a single Elixir exs script ```console -$ docker run -it --rm --name elixir-inst1 -v "$PWD":/usr/src/myapp -w /usr/src/myapp elixir elixir your-escript.exs +$ docker run -it --rm --name elixir-inst1 -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/elixir elixir your-escript.exs ``` # Image Variants -The `elixir` images come in many flavors, each designed for a specific use case. +The `amd64/elixir` images come in many flavors, each designed for a specific use case. -## `elixir:` +## `amd64/elixir:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `elixir:-slim` +## `amd64/elixir:-slim` -This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `elixir`. Unless you are working in an environment where *only* the `elixir` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. +This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `amd64/elixir`. Unless you are working in an environment where *only* the `amd64/elixir` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. -## `elixir:-alpine` +## `amd64/elixir:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/emqx/README.md b/emqx/README.md index 9a84b15c939d..4e93f2302c32 100644 --- a/emqx/README.md +++ b/emqx/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `emqx` official image](https://hub.docker.com/_/emqx) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # **DEPRECATION NOTICE** Starting from v5.9.0, EMQX has unified all features from the previous Open Source and Enterprise editions into a single, powerful offering with the Business Source License (BSL) 1.1. @@ -74,13 +76,13 @@ EMQX boasts more than 20K+ enterprise users across 50+ countries and regions, co Execute some command under this docker image ```console -$ docker run -d --name emqx emqx:${tag} +$ docker run -d --name emqx amd64/emqx:${tag} ``` For example ```console -$ docker run -d --name emqx -p 18083:18083 -p 1883:1883 emqx:latest +$ docker run -d --name emqx -p 18083:18083 -p 1883:1883 amd64/emqx:latest ``` The EMQX broker runs as Linux user `emqx` in the docker container. @@ -104,7 +106,7 @@ Note: The lowercase use of 'default' is not a typo. It is used to demonstrate th For example, set MQTT TCP port to 1883 ```console -$ docker run -d --name emqx -e EMQX_DASHBOARD__DEFAULT_PASSWORD=mysecret -p 18083:18083 -p 1883:1883 emqx:latest +$ docker run -d --name emqx -e EMQX_DASHBOARD__DEFAULT_PASSWORD=mysecret -p 18083:18083 -p 1883:1883 amd64/emqx:latest ``` Please read more about EMQX configuration in the [official documentation](https://docs.emqx.com/en/emqx/latest/configuration/configuration.html) @@ -126,7 +128,7 @@ Let's create a static node list cluster from Docker Compose. ```yaml services: emqx1: - image: emqx:latest + image: amd64/emqx:latest environment: - "EMQX_NODE__NAME=emqx@node1.emqx.io" - "EMQX_CLUSTER__DISCOVERY_STRATEGY=static" @@ -137,7 +139,7 @@ services: - node1.emqx.io emqx2: - image: emqx:latest + image: amd64/emqx:latest environment: - "EMQX_NODE__NAME=emqx@node2.emqx.io" - "EMQX_CLUSTER__DISCOVERY_STRATEGY=static" @@ -186,7 +188,7 @@ volumes: services: emqx: - image: emqx:latest + image: amd64/emqx:latest restart: always environment: EMQX_NODE__NAME: foo_emqx@127.0.0.1 @@ -218,7 +220,7 @@ docker run -d --name emqx -p 18083:18083 -p 1883:1883 \ --sysctl net.ipv4.tcp_wmem=1024 4096 16777216 \ --sysctl net.ipv4.tcp_max_tw_buckets=1048576 \ --sysctl net.ipv4.tcp_fin_timeout=15 \ - emqx:latest + amd64/emqx:latest ``` > REMEMBER: DO NOT RUN EMQX DOCKER PRIVILEGED OR MOUNT SYSTEM PROC IN CONTAINER TO TUNE LINUX KERNEL, IT IS UNSAFE. diff --git a/erlang/README.md b/erlang/README.md index 61f39d365e4e..96e642e2e003 100644 --- a/erlang/README.md +++ b/erlang/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `erlang` official image](https://hub.docker.com/_/erlang) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -86,7 +88,7 @@ Erlang is a programming language used to build massively scalable soft real-time ## Run it as the REPL ```console -➸ docker run -it --rm erlang +➸ docker run -it --rm amd64/erlang Erlang/OTP 20 [erts-9.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:10] [hipe] [kernel-poll:false] Eshell V9.0 (abort with ^G) @@ -105,7 +107,7 @@ User switch command q - quit erlang ? | h - this message --> q -➸ docker run -it --rm -h erlang.local erlang erl -name snode@erlang.local +➸ docker run -it --rm -h erlang.local amd64/erlang erl -name snode@erlang.local Erlang/OTP 20 [erts-9.0] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:10] [hipe] [kernel-poll:false] Eshell V9.0 (abort with ^G) @@ -119,24 +121,24 @@ User switch command ## Run a single Erlang escript ```console -$ docker run -it --rm --name erlang-inst1 -v "$PWD":/usr/src/myapp -w /usr/src/myapp erlang escript your-escript.erl +$ docker run -it --rm --name erlang-inst1 -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/erlang escript your-escript.erl ``` # Image Variants -The `erlang` images come in many flavors, each designed for a specific use case. +The `amd64/erlang` images come in many flavors, each designed for a specific use case. -## `erlang:` +## `amd64/erlang:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. This tag is based off of [`buildpack-deps`](https://hub.docker.com/_/buildpack-deps/). `buildpack-deps` is designed for the average user of Docker who has many images on their system. It, by design, has a large number of extremely common Debian packages. This reduces the number of packages that images that derive from it need to install, thus reducing the overall size of all images on your system. -## `erlang:-slim` +## `amd64/erlang:-slim` -This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `erlang`. Unless you are working in an environment where *only* the `erlang` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. +This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run `amd64/erlang`. Unless you are working in an environment where *only* the `amd64/erlang` image will be deployed and you have space constraints, we highly recommend using the default image of this repository. -## `erlang:-alpine` +## `amd64/erlang:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/fedora/README.md b/fedora/README.md index db64660e2371..969e577574da 100644 --- a/fedora/README.md +++ b/fedora/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `fedora` official image](https://hub.docker.com/_/fedora) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -55,11 +57,11 @@ This image serves as the `official Fedora image` for the [Fedora Distribution](h ![logo](https://raw.githubusercontent.com/docker-library/docs/7925a7131128930eed07077f9369b7ca52e0fd02/fedora/logo.png) -The `fedora:latest` tag will always point to the latest stable release. +The `amd64/fedora:latest` tag will always point to the latest stable release. This image is a relatively small footprint in comparison to a standard Fedora installation. This image is generated in the [Fedora Build System](http://koji.fedoraproject.org/koji/) and is built from [this kickstart file](https://pagure.io/fedora-kickstarts/blob/main/f/fedora-container-base.ks). -[Fedora Rawhide](https://fedoraproject.org/wiki/Releases/Rawhide) is available via `fedora:rawhide` and any specific version of Fedora as `fedora:$version` (example: `fedora:23`). +[Fedora Rawhide](https://fedoraproject.org/wiki/Releases/Rawhide) is available via `amd64/fedora:rawhide` and any specific version of Fedora as `amd64/fedora:$version` (example: `amd64/fedora:23`). # License diff --git a/flink/README.md b/flink/README.md index 069908451477..f344293976d3 100644 --- a/flink/README.md +++ b/flink/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `flink` official image](https://hub.docker.com/_/flink) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: diff --git a/fluentd/README.md b/fluentd/README.md index a536ef249e79..a8a6734e7d53 100644 --- a/fluentd/README.md +++ b/fluentd/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `fluentd` official image](https://hub.docker.com/_/fluentd) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -62,7 +64,7 @@ For more information, check [official site](https://www.fluentd.org/) and [docum # How to run images ```bash -$ docker run -p 24224:24224 -p 24224:24224/udp -u fluent -v /path/to/dir:/fluentd/log fluentd +$ docker run -p 24224:24224 -p 24224:24224/udp -u fluent -v /path/to/dir:/fluentd/log amd64/fluentd 2019-01-16 11:49:55 +0000 [info]: parsing config file is succeeded path="/fluentd/etc/fluent.conf" ... 2019-01-16 11:58:27 +0000 [info]: #0 [input1] listening port port=24224 bind="0.0.0.0" diff --git a/friendica/README.md b/friendica/README.md index bad7d24136c0..1b5366408346 100644 --- a/friendica/README.md +++ b/friendica/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `friendica` official image](https://hub.docker.com/_/friendica) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -76,7 +78,7 @@ You need at least one other mariadb/mysql-container to link it to Friendica. The apache image contains a webserver and exposes port 80. To start the container type: ```console -$ docker run -d -p 8080:80 --network some-network friendica +$ docker run -d -p 8080:80 --network some-network amd64/friendica ``` Now you can access the Friendica installation wizard at http://localhost:8080/ from your host system. @@ -86,7 +88,7 @@ Now you can access the Friendica installation wizard at http://localhost:8080/ f To use the fpm image you need an additional web server that can proxy http-request to the fpm-port of the container. For fpm connection this container exposes port 9000. In most cases you might want use another container or your host as proxy. If you use your host you can address your Friendica container directly on port 9000. If you use another container, make sure that you add them to the same docker network (via `docker run --network ...` or a `compose.yaml` file). In both cases you don't want to map the fpm port to you host. ```console -$ docker run -d friendica:fpm +$ docker run -d amd64/friendica:fpm ``` As the fastCGI-Process is not capable of serving static files (style sheets, images, ...) the webserver needs access to these files. This can be achieved with the `volumes-from` option. You can find more information in the Docker Compose section. @@ -184,7 +186,7 @@ Friendica: $ docker run -d \ -v friendica-vol-1:/var/www/html \ --network some-network - friendica + amd64/friendica ``` Database: @@ -271,7 +273,7 @@ Currently, this is only supported for `FRIENDICA_ADMIN_MAIL`, `MYSQL_DATABASE`, ## Updating to a newer version -You have to pull the latest image from the hub (`docker pull friendica`). The stable branch gets checked at every startup and will get updated if no installation was found or a new image is used. +You have to pull the latest image from the hub (`docker pull amd64/friendica`). The stable branch gets checked at every startup and will get updated if no installation was found or a new image is used. # Running this image with Docker Compose @@ -299,7 +301,7 @@ services: - MYSQL_RANDOM_ROOT_PASSWORD=yes app: - image: friendica + image: amd64/friendica restart: always volumes: - friendica:/var/www/html @@ -348,7 +350,7 @@ services: - MYSQL_RANDOM_ROOT_PASSWORD=yes app: - image: friendica:fpm + image: amd64/friendica:fpm restart: always volumes: - friendica:/var/www/html @@ -394,13 +396,13 @@ If you got any questions or problems using the image, please visit our [Github R # Image Variants -The `friendica` images come in many flavors, each designed for a specific use case. +The `amd64/friendica` images come in many flavors, each designed for a specific use case. -## `friendica:` +## `amd64/friendica:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `friendica:-alpine` +## `amd64/friendica:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/gazebo/README.md b/gazebo/README.md index 81d832c172f0..69389dced098 100644 --- a/gazebo/README.md +++ b/gazebo/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `gazebo` official image](https://hub.docker.com/_/gazebo) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -60,7 +62,7 @@ Robot simulation is an essential tool in every roboticist's toolbox. A well-desi ## Create a `Dockerfile` in your Gazebo project ```dockerfile -FROM gazebo:gzserver8 +FROM amd64/gazebo:gzserver8 # place here your application's setup specifics CMD [ "gzserver", "my-gazebo-app-args" ] ``` @@ -91,7 +93,7 @@ Gazebo uses the `~/.gazebo/` directory for storing logs, models and scene info. For example, if one wishes to use their own `.gazebo` folder that already resides in their local home directory, with a username of `ubuntu`, we can simple launch the container with an additional volume argument: ```console -$ docker run -v "/home/ubuntu/.gazebo/:/root/.gazebo/" gazebo +$ docker run -v "/home/ubuntu/.gazebo/:/root/.gazebo/" amd64/gazebo ``` One thing to be careful about is that gzserver logs to files named `/root/.gazebo/server-/*.log`, where `` is the port number that server is listening on (11345 by default). If you run and mount multiple containers using the same default port and same host side directory, then they will collide and attempt writing to the same file. If you want to run multiple gzservers on the same docker host, then a bit more clever volume mounting of `~/.gazebo/` subfolders would be required. @@ -111,13 +113,13 @@ In this short example, we'll spin up a new container running gazebo server, conn > First launch a gazebo server with a mounted volume for logging and name the container gazebo: ```console -$ docker run -d -v="/tmp/.gazebo/:/root/.gazebo/" --name=gazebo gazebo +$ docker run -d -v="/tmp/.gazebo/:/root/.gazebo/" --name=gazebo amd64/gazebo ``` > Now open a new bash session in the container using the same entrypoint to configure the environment. Then download the double_pendulum model and load it into the simulation. ```console -$ docker exec -it gazebo bash +$ docker exec -it amd64/gazebo bash $ apt-get update && apt-get install -y curl $ curl -o double_pendulum.sdf http://models.gazebosim.org/double_pendulum_with_base/model-1_4.sdf $ gz model --model-name double_pendulum --spawn-file double_pendulum.sdf diff --git a/gcc/README.md b/gcc/README.md index f9e47c010710..cd2a44e87a66 100644 --- a/gcc/README.md +++ b/gcc/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `gcc` official image](https://hub.docker.com/_/gcc) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -66,7 +68,7 @@ The GNU Compiler Collection (GCC) is a compiler system produced by the GNU Proje The most straightforward way to use this image is to use a gcc container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project: ```dockerfile -FROM gcc:4.9 +FROM amd64/gcc:4.9 COPY . /usr/src/myapp WORKDIR /usr/src/myapp RUN gcc -o myapp main.c @@ -85,13 +87,13 @@ $ docker run -it --rm --name my-running-app my-gcc-app There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like: ```console -$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 gcc -o myapp myapp.c +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/gcc:4.9 gcc -o myapp myapp.c ``` This will add your current directory, as a volume, to the container, set the working directory to the volume, and run the command `gcc -o myapp myapp.c.` This tells gcc to compile the code in `myapp.c` and output the executable to myapp. Alternatively, if you have a `Makefile`, you can instead run the `make` command inside your container: ```console -$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp gcc:4.9 make +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/gcc:4.9 make ``` # License diff --git a/geonetwork/README.md b/geonetwork/README.md index 07b1c7b0fd47..2c423405f7a1 100644 --- a/geonetwork/README.md +++ b/geonetwork/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `geonetwork` official image](https://hub.docker.com/_/geonetwork) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -73,24 +75,24 @@ This is a quick example of how to get GeoNetwork 4.4 Latest up and running for d ```console docker pull elasticsearch:7.17.15 -docker pull geonetwork:4 +docker pull amd64/geonetwork:4 docker network create gn-network docker run -d --name my-es-host --network gn-network -e "discovery.type=single-node" elasticsearch:7.17.15 -docker run --name geonetwork-host --network gn-network -e GN_CONFIG_PROPERTIES="-Des.host=my-es-host -Des.protocol=http -Des.port=9200 -Des.url=http://my-es-host:9200" -p 8080:8080 geonetwork:4 +docker run --name geonetwork-host --network gn-network -e GN_CONFIG_PROPERTIES="-Des.host=my-es-host -Des.protocol=http -Des.port=9200 -Des.url=http://my-es-host:9200" -p 8080:8080 amd64/geonetwork:4 ``` For GeoNetwork 4.2 Stable: ```console docker pull elasticsearch:7.17.15 -docker pull geonetwork:4.2 +docker pull amd64/geonetwork:4.2 docker network create gn-network docker run -d --name my-es-host --network gn-network -e "discovery.type=single-node" elasticsearch:7.17.15 -docker run --name geonetwork-host --network gn-network -e ES_HOST=my-es-host -e ES_PROTOCOL=http -e ES_PORT=9200 -p 8080:8080 geonetwork:4.2 +docker run --name geonetwork-host --network gn-network -e ES_HOST=my-es-host -e ES_PROTOCOL=http -e ES_PORT=9200 -p 8080:8080 amd64/geonetwork:4.2 ``` To be sure about what Elasticsearch version to use you can check the [GeoNetwork documentation](https://docs.geonetwork-opensource.org/4.4/install-guide/installing-index/) for your GN version or the `es.version` property in the [`pom.xml`](https://github.com/geonetwork/core-geonetwork/blob/main/pom.xml#L1528C17-L1528C24) file of the GeoNetwork release used. @@ -119,7 +121,7 @@ Example Docker Compose YAML snippet: ```yaml services: geonetwork: - image: geonetwork:4.4 + image: amd64/geonetwork:4.4 environment: GN_CONFIG_PROPERTIES: >- -Des.host=elasticsearch @@ -160,7 +162,7 @@ By default GeoNetwork uses a local **H2 database** for demo use (this one is **n This command will start a debian-based container, running a Tomcat (GN 3) or Jetty (GN 4) web server, with a GeoNetwork WAR deployed on the server: ```console -docker run --name some-geonetwork -d geonetwork +docker run --name some-geonetwork -d amd64/geonetwork ``` ### Publish port @@ -168,7 +170,7 @@ docker run --name some-geonetwork -d geonetwork GeoNetwork listens on port `8080`. If you want to access the container at the host, **you must publish this port**. For instance, this, will redirect all the container traffic on port 8080, to the same port on the host: ```console -docker run --name some-geonetwork -d -p 8080:8080 geonetwork +docker run --name some-geonetwork -d -p 8080:8080 amd64/geonetwork ``` Then, if you are running docker on Linux, you may access geonetwork at http://localhost:8080/geonetwork. @@ -182,7 +184,7 @@ By default, GeoNetwork sets the data directory on `/opt/geonetwork/WEB-INF/data` Since version 4.4.0 the data directory needs to be configued using Java properties passed in the `GN_CONFIG_PROPERTIES` environment variable. For example: ```console -docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn geonetwork +docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn amd64/geonetwork ``` ### Persisting data @@ -192,13 +194,13 @@ To set the data directory to `/catalogue-data/data` and H2 database file to `/ca - GeoNetwork 4.2 and older ```console -docker run --name some-geonetwork -d -p 8080:8080 -e DATA_DIR=/catalogue-data/data -e GEONETWORK_DB_NAME=/catalogue-data/db/gn geonetwork:3 +docker run --name some-geonetwork -d -p 8080:8080 -e DATA_DIR=/catalogue-data/data -e GEONETWORK_DB_NAME=/catalogue-data/db/gn amd64/geonetwork:3 ``` - Since GeoNetwork 4.4.0 ```console -docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn geonetwork +docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn amd64/geonetwork ``` If you want the data directory to live beyond restarts, or even destruction of the container, you can mount a directory from the docker engine's host into the container. - `-v /host/path:/path/to/data/directory`. For instance this, will mount the host directory `/host/geonetwork-docker` into `/catalogue-data` on the container: @@ -206,13 +208,13 @@ If you want the data directory to live beyond restarts, or even destruction of t - GeoNetwork 4.2 and older ```console -docker run --name some-geonetwork -d -p 8080:8080 -e DATA_DIR=/catalogue-data/data -e GEONETWORK_DB_NAME=/catalogue-data/db/gn -v /host/geonetwork-docker:/catalogue-data geonetwork:3 +docker run --name some-geonetwork -d -p 8080:8080 -e DATA_DIR=/catalogue-data/data -e GEONETWORK_DB_NAME=/catalogue-data/db/gn -v /host/geonetwork-docker:/catalogue-data amd64/geonetwork:3 ``` - GeoNetwork 4.4.0 and newer ```console -docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn -v /host/geonetwork-docker:/catalogue-data geonetwork +docker run --name some-geonetwork -d -p 8080:8080 -e GN_CONFIG_PROPERTIES="-Dgeonetwork.dir=/catalogue-data" -e GEONETWORK_DB_NAME=/catalogue-data/db/gn -v /host/geonetwork-docker:/catalogue-data amd64/geonetwork ``` ### ... via [`docker compose`](https://github.com/docker/compose) diff --git a/ghost/README.md b/ghost/README.md index 9c15fd27dfe9..d9883876d154 100644 --- a/ghost/README.md +++ b/ghost/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `ghost` official image](https://hub.docker.com/_/ghost) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -60,7 +62,7 @@ Ghost is an independent platform for publishing online by web and email newslett This will start a Ghost development instance listening on the default Ghost port of 2368. ```console -$ docker run -d --name some-ghost -e NODE_ENV=development ghost +$ docker run -d --name some-ghost -e NODE_ENV=development amd64/ghost ``` ## Custom port @@ -68,7 +70,7 @@ $ docker run -d --name some-ghost -e NODE_ENV=development ghost If you'd like to be able to access the instance from the host without the container's IP, standard port mappings can be used: ```console -$ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://localhost:3001 -p 3001:2368 ghost +$ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://localhost:3001 -p 3001:2368 amd64/ghost ``` If all goes well, you'll be able to access your new site on `http://localhost:3001` and `http://localhost:3001/ghost` to access Ghost Admin (or `http://host-ip:3001` and `http://host-ip:3001/ghost`, respectively). @@ -90,7 +92,7 @@ $ docker run -d \ -e database__connection__filename='/var/lib/ghost/content/data/ghost.db' \ -p 3001:2368 \ -v /path/to/ghost/blog:/var/lib/ghost/content \ - ghost:alpine + amd64/ghost:alpine ``` Note: `database__connection__filename` is only valid in development mode and is the location for the SQLite database file. If using development mode, it should be set to a writeable path within a persistent folder (bind mount or volume). It is not available in production mode because an external MySQL server is required (see the Docker Compose example below). @@ -106,7 +108,7 @@ $ docker run -d \ -e database__connection__filename='/var/lib/ghost/content/data/ghost.db' \ -p 3001:2368 \ -v some-ghost-data:/var/lib/ghost/content \ - ghost + amd64/ghost ``` ## Configuration @@ -114,7 +116,7 @@ $ docker run -d \ All Ghost configuration parameters (such as `url`) can be specified via environment variables. See [the Ghost documentation](https://ghost.org/docs/concepts/config/#running-ghost-with-config-env-variables) for details about what configuration is allowed and how to convert a nested configuration key into the appropriate environment variable name: ```console -$ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://some-ghost.example.com ghost +$ docker run -d --name some-ghost -e NODE_ENV=development -e url=http://some-ghost.example.com amd64/ghost ``` (There are further configuration examples in the `compose.yaml` listed below.) @@ -181,13 +183,13 @@ Run `docker compose up`, wait for it to initialize completely, and visit `http:/ # Image Variants -The `ghost` images come in many flavors, each designed for a specific use case. +The `amd64/ghost` images come in many flavors, each designed for a specific use case. -## `ghost:` +## `amd64/ghost:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. -## `ghost:-alpine` +## `amd64/ghost:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/golang/README.md b/golang/README.md index 9dd6d95523b2..2ecbe21ba342 100644 --- a/golang/README.md +++ b/golang/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `golang` official image](https://hub.docker.com/_/golang) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -36,10 +38,6 @@ WARNING: - [`1.25rc1-alpine3.21`, `1.25-rc-alpine3.21`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/alpine3.21/Dockerfile) -- [`1.25rc1-windowsservercore-ltsc2025`, `1.25-rc-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`1.25rc1-windowsservercore-ltsc2022`, `1.25-rc-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2022/Dockerfile) - - [`1.24.4-bookworm`, `1.24-bookworm`, `1-bookworm`, `bookworm`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/bookworm/Dockerfile) - [`1.24.4-bullseye`, `1.24-bullseye`, `1-bullseye`, `bullseye`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/bullseye/Dockerfile) @@ -48,14 +46,6 @@ WARNING: - [`1.24.4-alpine3.21`, `1.24-alpine3.21`, `1-alpine3.21`, `alpine3.21`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/alpine3.21/Dockerfile) -- [`1.24.4-windowsservercore-ltsc2025`, `1.24-windowsservercore-ltsc2025`, `1-windowsservercore-ltsc2025`, `windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`1.24.4-windowsservercore-ltsc2022`, `1.24-windowsservercore-ltsc2022`, `1-windowsservercore-ltsc2022`, `windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`1.24.4-nanoserver-ltsc2025`, `1.24-nanoserver-ltsc2025`, `1-nanoserver-ltsc2025`, `nanoserver-ltsc2025`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/nanoserver-ltsc2025/Dockerfile) - -- [`1.24.4-nanoserver-ltsc2022`, `1.24-nanoserver-ltsc2022`, `1-nanoserver-ltsc2022`, `nanoserver-ltsc2022`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/nanoserver-ltsc2022/Dockerfile) - - [`1.23.10-bookworm`, `1.23-bookworm`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/bookworm/Dockerfile) - [`1.23.10-bullseye`, `1.23-bullseye`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/bullseye/Dockerfile) @@ -64,14 +54,6 @@ WARNING: - [`1.23.10-alpine3.21`, `1.23-alpine3.21`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/alpine3.21/Dockerfile) -- [`1.23.10-windowsservercore-ltsc2025`, `1.23-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2025/Dockerfile) - -- [`1.23.10-windowsservercore-ltsc2022`, `1.23-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2022/Dockerfile) - -- [`1.23.10-nanoserver-ltsc2025`, `1.23-nanoserver-ltsc2025`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/nanoserver-ltsc2025/Dockerfile) - -- [`1.23.10-nanoserver-ltsc2022`, `1.23-nanoserver-ltsc2022`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/nanoserver-ltsc2022/Dockerfile) - - [`tip-20250613-bookworm`, `tip-bookworm`](https://github.com/docker-library/golang/blob/0600de98a144e433e13617ec64523cb58ecd7bc0/tip/bookworm/Dockerfile) - [`tip-20250613-bullseye`, `tip-bullseye`](https://github.com/docker-library/golang/blob/0600de98a144e433e13617ec64523cb58ecd7bc0/tip/bullseye/Dockerfile) @@ -85,45 +67,14 @@ WARNING: - `1.25rc1`, `1.25-rc`: - [`1.25rc1-bookworm`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/bookworm/Dockerfile) - - [`1.25rc1-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.25rc1-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2022/Dockerfile) - -- `1.25rc1-windowsservercore`, `1.25-rc-windowsservercore`: - - - [`1.25rc1-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.25rc1-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/37f4c078c0906f4c2226072dcbb81e6e9bc439dc/1.25-rc/windows/windowsservercore-ltsc2022/Dockerfile) - `1.24.4`, `1.24`, `1`, `latest`: - [`1.24.4-bookworm`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/bookworm/Dockerfile) - - [`1.24.4-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.24.4-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2022/Dockerfile) - -- `1.24.4-windowsservercore`, `1.24-windowsservercore`, `1-windowsservercore`, `windowsservercore`: - - - [`1.24.4-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.24.4-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/windowsservercore-ltsc2022/Dockerfile) - -- `1.24.4-nanoserver`, `1.24-nanoserver`, `1-nanoserver`, `nanoserver`: - - - [`1.24.4-nanoserver-ltsc2025`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/nanoserver-ltsc2025/Dockerfile) - - [`1.24.4-nanoserver-ltsc2022`](https://github.com/docker-library/golang/blob/205cf586b0d0c7200e0fd642feaf738ddb382da0/1.24/windows/nanoserver-ltsc2022/Dockerfile) - `1.23.10`, `1.23`: - [`1.23.10-bookworm`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/bookworm/Dockerfile) - - [`1.23.10-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.23.10-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2022/Dockerfile) - -- `1.23.10-windowsservercore`, `1.23-windowsservercore`: - - - [`1.23.10-windowsservercore-ltsc2025`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2025/Dockerfile) - - [`1.23.10-windowsservercore-ltsc2022`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/windowsservercore-ltsc2022/Dockerfile) - -- `1.23.10-nanoserver`, `1.23-nanoserver`: - - - [`1.23.10-nanoserver-ltsc2025`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/nanoserver-ltsc2025/Dockerfile) - - [`1.23.10-nanoserver-ltsc2022`](https://github.com/docker-library/golang/blob/696a3e93441e4e8ec740f0bff37a96a0983749e5/1.23/windows/nanoserver-ltsc2022/Dockerfile) - `tip-20250613`, `tip`: @@ -165,7 +116,7 @@ Go (a.k.a., Golang) is a programming language first developed at Google. It is a The most straightforward way to use this image is to use a Go container as both the build and runtime environment. In your `Dockerfile`, writing something along the lines of the following will compile and run your project (assuming it uses `go.mod` for dependency management): ```dockerfile -FROM golang:1.24 +FROM amd64/golang:1.24 WORKDIR /usr/src/app @@ -191,13 +142,13 @@ $ docker run -it --rm --name my-running-app my-golang-app There may be occasions where it is not appropriate to run your app inside a container. To compile, but not run your app inside the Docker instance, you can write something like: ```console -$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.24 go build -v +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/golang:1.24 go build -v ``` This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `go build` which will tell go to compile the project in the working directory and output the executable to `myapp`. Alternatively, if you have a `Makefile`, you can run the `make` command inside your container. ```console -$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.24 make +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/golang:1.24 make ``` ## Cross-compile your app inside the Docker container @@ -205,13 +156,13 @@ $ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.24 make If you need to compile your application for a platform other than `linux/amd64` (such as `windows/386`): ```console -$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.24 go build -v +$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 amd64/golang:1.24 go build -v ``` Alternatively, you can build for multiple platforms at once: ```console -$ docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.24 bash +$ docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp amd64/golang:1.24 bash $ for GOOS in darwin linux; do > for GOARCH in 386 amd64; do > export GOOS GOARCH @@ -226,15 +177,15 @@ If downloading your dependencies results in an error like "checksum mismatch", y # Image Variants -The `golang` images come in many flavors, each designed for a specific use case. +The `amd64/golang` images come in many flavors, each designed for a specific use case. -## `golang:` +## `amd64/golang:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. Some of these tags may have names like bookworm or bullseye in them. These are the suite code names for releases of [Debian](https://wiki.debian.org/DebianReleases) and indicate which release the image is based on. If your image needs to install any additional packages beyond what comes with the image, you'll likely want to specify one of these explicitly to minimize breakage when there are new releases of Debian. -## `golang:-alpine` +## `amd64/golang:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. @@ -244,16 +195,7 @@ The main caveat to note is that it does use [musl libc](https://musl.libc.org) i To minimize image size, additional related tools (such as `git`, `gcc`, or `bash`) are not included in Alpine-based images. Using this image as a base, add the things you need in your own Dockerfile (see the [`alpine` image description](https://hub.docker.com/_/alpine/) for examples of how to install packages if you are unfamiliar). See also [docker-library/golang#250 (comment)](https://github.com/docker-library/golang/issues/250#issuecomment-451201761) for a longer explanation. -## `golang:-windowsservercore` - -This image is based on [Windows Server Core (`microsoft/windowsservercore`)](https://hub.docker.com/r/microsoft/windowsservercore/). As such, it only works in places which that image does, such as Windows 10 Professional/Enterprise (Anniversary Edition) or Windows Server 2016. - -For information about how to get Docker running on Windows, please see the relevant "Quick Start" guide provided by Microsoft: - -- [Windows Server Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_server) -- [Windows 10 Quick Start](https://msdn.microsoft.com/en-us/virtualization/windowscontainers/quick_start/quick_start_windows_10) - -## `golang:-tip` +## `amd64/golang:-tip` The term "tip" in the Go community is used to refer to the latest development branch ([a leftover convention from previously using `hg` for version control](https://github.com/golang/build/blob/6383021611af0e07cbf0a60222e066662557c796/cmd/coordinator/internal/legacydash/build.go#L313-L314)). diff --git a/gradle/README.md b/gradle/README.md index b700b97980a1..1c424c6400fc 100644 --- a/gradle/README.md +++ b/gradle/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `gradle` official image](https://hub.docker.com/_/gradle) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -157,7 +159,7 @@ WARNING: Run this from the directory of the Gradle project you want to build. -`docker run --rm -u gradle -v "$PWD":/home/gradle/project -w /home/gradle/project gradle gradle ` +`docker run --rm -u gradle -v "$PWD":/home/gradle/project -w /home/gradle/project amd64/gradle gradle ` Note the above command runs using uid/gid 1000 (user *gradle*) to avoid running as root. @@ -169,15 +171,15 @@ Java 21 does not currently support build customizations using Kotlin (such as us # Image Variants -The `gradle` images come in many flavors, each designed for a specific use case. +The `amd64/gradle` images come in many flavors, each designed for a specific use case. -## `gradle:` +## `amd64/gradle:` This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of. Some of these tags may have names like jammy or noble in them. These are the suite code names for releases of [Ubuntu](https://wiki.ubuntu.com/Releases) and indicate which release the image is based on. If your image needs to install any additional packages beyond what comes with the image, you'll likely want to specify one of these explicitly to minimize breakage when there are new releases of Ubuntu. -## `gradle:-alpine` +## `amd64/gradle:-alpine` This image is based on the popular [Alpine Linux project](https://alpinelinux.org), available in [the `alpine` official image](https://hub.docker.com/_/alpine). Alpine Linux is much smaller than most distribution base images (~5MB), and thus leads to much slimmer images in general. diff --git a/groovy/README.md b/groovy/README.md index e520b232bde9..c9661ae4e3ff 100644 --- a/groovy/README.md +++ b/groovy/README.md @@ -14,6 +14,8 @@ WARNING: --> +**Note:** this is the "per-architecture" repository for the `amd64` builds of [the `groovy` official image](https://hub.docker.com/_/groovy) -- for more information, see ["Architectures other than amd64?" in the official images documentation](https://github.com/docker-library/official-images#architectures-other-than-amd64) and ["An image's source changed in Git, now what?" in the official images FAQ](https://github.com/docker-library/faq#an-images-source-changed-in-git-now-what). + # Quick reference - **Maintained by**: @@ -73,7 +75,7 @@ Note that if you are mounting a volume and the uid running Docker is not `1000`, ## Running a Groovy script -`docker run --rm -v "$PWD":/home/groovy/scripts -w /home/groovy/scripts groovy groovy