#
tokens: 45790/50000 7/1033 files (page 7/22)
lines: off (toggle) GitHub
raw markdown copy
This is page 7 of 22. Use http://codebase.md/id/docs/get_started/create/basic_markup.html?lines=false&page={x} to view the full context.

# Directory Structure

```
├── .ci
│   ├── check-markdownfmt.sh
│   ├── check-metadata.sh
│   ├── check-pr-no-readme.sh
│   ├── check-required-files.sh
│   ├── check-short.sh
│   ├── check-ymlfmt.sh
│   └── get-markdownfmt.sh
├── .common-templates
│   ├── maintainer-community.md
│   ├── maintainer-docker.md
│   ├── maintainer-hashicorp.md
│   └── maintainer-influxdata.md
├── .dockerignore
├── .github
│   └── workflows
│       └── ci.yml
├── .template-helpers
│   ├── arches.sh
│   ├── autogenerated-warning.md
│   ├── compose.md
│   ├── generate-dockerfile-links-partial.sh
│   ├── generate-dockerfile-links-partial.tmpl
│   ├── get-help.md
│   ├── issues.md
│   ├── license-common.md
│   ├── template.md
│   ├── variant-alpine.md
│   ├── variant-default-buildpack-deps.md
│   ├── variant-default-debian.md
│   ├── variant-default-ubuntu.md
│   ├── variant-onbuild.md
│   ├── variant-slim.md
│   ├── variant-windowsservercore.md
│   ├── variant.md
│   └── variant.sh
├── adminer
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── aerospike
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── almalinux
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── alpine
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── alt
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── amazoncorretto
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── amazonlinux
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── api-firewall
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── arangodb
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── archlinux
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── backdrop
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── bash
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── bonita
│   ├── compose.yaml
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── buildpack-deps
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── busybox
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-glibc.md
│   ├── variant-musl.md
│   ├── variant-uclibc.md
│   └── variant.md
├── caddy
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo-120.png
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── cassandra
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── chronograf
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── cirros
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── clearlinux
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── clefos
│   ├── content.md
│   ├── deprecated.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── clickhouse
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── clojure
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── composer
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── convertigo
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── couchbase
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── couchdb
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── crate
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── dart
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── debian
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-slim.md
│   └── variant.md
├── docker
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-rootless.md
│   └── variant-windowsservercore.md
├── Dockerfile
├── drupal
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-fpm.md
├── eclipse-mosquitto
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── eclipse-temurin
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── eggdrop
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── elasticsearch
│   ├── compose.yaml
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-alpine.md
├── elixir
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── emqx
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── erlang
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── fedora
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── flink
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── fluentd
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── friendica
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── gazebo
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── gcc
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── generate-repo-stub-readme.sh
├── geonetwork
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-postgres.md
│   └── variant.md
├── get-categories.sh
├── ghost
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── golang
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-alpine.md
│   └── variant-tip.md
├── gradle
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── groovy
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── haproxy
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── haskell
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-slim.md
├── haxe
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── hello-world
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── update.sh
├── hitch
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── httpd
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── hylang
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── ibm-semeru-runtimes
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── ibmjava
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── influxdb
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-data.md
│   └── variant-meta.md
├── irssi
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── jetty
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── joomla
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── jruby
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── julia
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── kapacitor
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── kibana
│   ├── compose.yaml
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── kong
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── krakend
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo-120.png
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── LICENSE
├── lightstreamer
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── liquibase
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── logstash
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-alpine.md
├── mageia
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── mariadb
│   ├── compose.yaml
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── markdownfmt.sh
├── matomo
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── maven
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── mediawiki
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── memcached
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── metadata.json
├── metadata.sh
├── mongo
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── mongo-express
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── monica
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── mono
│   ├── content.md
│   ├── deprecated.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── mysql
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── nats
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── neo4j
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── neurodebian
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── nextcloud
│   ├── content.md
│   ├── deprecated.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── nginx
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-perl.md
├── node
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── notary
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── odoo
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── open-liberty
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── openjdk
│   ├── content.md
│   ├── deprecated.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-alpine.md
│   ├── variant-oracle.md
│   └── variant-slim.md
├── oraclelinux
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-slim.md
├── orientdb
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── parallel-update.sh
├── percona
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── perl
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── photon
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── php
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-apache.md
│   ├── variant-cli.md
│   ├── variant-fpm.md
│   └── variant.md
├── php-zendserver
│   ├── content.md
│   ├── deprecated.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── phpmyadmin
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── plone
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── postfixadmin
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-apache.md
│   ├── variant-fpm-alpine.md
│   └── variant-fpm.md
├── postgres
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── push.pl
├── push.sh
├── pypy
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── python
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-slim.md
├── r-base
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rabbitmq
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rakudo-star
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── README.md
├── redis
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── redmine
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── registry
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rethinkdb
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rocket.chat
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rockylinux
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── ros
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── ruby
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── rust
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── sapmachine
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── satosa
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── scratch
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── silverpeas
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── solr
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── sonarqube
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── spark
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── spiped
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── storm
│   ├── compose.yaml
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── swift
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── swipl
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── teamspeak
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── telegraf
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── tomcat
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── tomee
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── traefik
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-alpine.md
├── ubuntu
│   ├── content.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── unit
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── update.sh
├── varnish
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── websphere-liberty
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── wordpress
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   ├── variant-cli.md
│   └── variant-fpm.md
├── xwiki
│   ├── content.md
│   ├── get-help.md
│   ├── github-repo
│   ├── issues.md
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   └── README.md
├── ymlfmt.sh
├── yourls
│   ├── compose.yaml
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.svg
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-fpm.md
├── znc
│   ├── content.md
│   ├── github-repo
│   ├── license.md
│   ├── logo.png
│   ├── maintainer.md
│   ├── metadata.json
│   ├── README-short.txt
│   ├── README.md
│   └── variant-slim.md
└── zookeeper
    ├── compose.yaml
    ├── content.md
    ├── github-repo
    ├── license.md
    ├── logo.png
    ├── maintainer.md
    ├── metadata.json
    ├── README-short.txt
    └── README.md
```

# Files

--------------------------------------------------------------------------------
/julia/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "julia/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "julia/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Docker Community](https://github.com/docker-library/julia)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

(See ["What's the difference between 'Shared' and 'Simple' tags?" in the FAQ](https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags).)

## Simple Tags

-	[`1.12.0-beta3-bookworm`, `1.12-rc-bookworm`, `rc-bookworm`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/bookworm/Dockerfile)

-	[`1.12.0-beta3-bullseye`, `1.12-rc-bullseye`, `rc-bullseye`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/bullseye/Dockerfile)

-	[`1.12.0-beta3-alpine3.21`, `1.12-rc-alpine3.21`, `rc-alpine3.21`, `1.12.0-beta3-alpine`, `1.12-rc-alpine`, `rc-alpine`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/alpine3.21/Dockerfile)

-	[`1.12.0-beta3-alpine3.20`, `1.12-rc-alpine3.20`, `rc-alpine3.20`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/alpine3.20/Dockerfile)

-	[`1.12.0-beta3-windowsservercore-ltsc2025`, `1.12-rc-windowsservercore-ltsc2025`, `rc-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2025/Dockerfile)

-	[`1.12.0-beta3-windowsservercore-ltsc2022`, `1.12-rc-windowsservercore-ltsc2022`, `rc-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2022/Dockerfile)

-	[`1.12.0-beta3-windowsservercore-1809`, `1.12-rc-windowsservercore-1809`, `rc-windowsservercore-1809`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-1809/Dockerfile)

-	[`1.11.5-bookworm`, `1.11-bookworm`, `1-bookworm`, `bookworm`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/bookworm/Dockerfile)

-	[`1.11.5-bullseye`, `1.11-bullseye`, `1-bullseye`, `bullseye`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/bullseye/Dockerfile)

-	[`1.11.5-alpine3.21`, `1.11-alpine3.21`, `1-alpine3.21`, `alpine3.21`, `1.11.5-alpine`, `1.11-alpine`, `1-alpine`, `alpine`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/alpine3.21/Dockerfile)

-	[`1.11.5-alpine3.20`, `1.11-alpine3.20`, `1-alpine3.20`, `alpine3.20`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/alpine3.20/Dockerfile)

-	[`1.11.5-windowsservercore-ltsc2025`, `1.11-windowsservercore-ltsc2025`, `1-windowsservercore-ltsc2025`, `windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2025/Dockerfile)

-	[`1.11.5-windowsservercore-ltsc2022`, `1.11-windowsservercore-ltsc2022`, `1-windowsservercore-ltsc2022`, `windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2022/Dockerfile)

-	[`1.11.5-windowsservercore-1809`, `1.11-windowsservercore-1809`, `1-windowsservercore-1809`, `windowsservercore-1809`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-1809/Dockerfile)

-	[`1.10.9-bookworm`, `1.10-bookworm`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/bookworm/Dockerfile)

-	[`1.10.9-bullseye`, `1.10-bullseye`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/bullseye/Dockerfile)

-	[`1.10.9-alpine3.21`, `1.10-alpine3.21`, `1.10.9-alpine`, `1.10-alpine`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/alpine3.21/Dockerfile)

-	[`1.10.9-alpine3.20`, `1.10-alpine3.20`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/alpine3.20/Dockerfile)

-	[`1.10.9-windowsservercore-ltsc2025`, `1.10-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2025/Dockerfile)

-	[`1.10.9-windowsservercore-ltsc2022`, `1.10-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2022/Dockerfile)

-	[`1.10.9-windowsservercore-1809`, `1.10-windowsservercore-1809`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-1809/Dockerfile)

## Shared Tags

-	`1.12.0-beta3`, `1.12-rc`, `rc`:

	-	[`1.12.0-beta3-bookworm`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/bookworm/Dockerfile)
	-	[`1.12.0-beta3-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.12.0-beta3-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.12.0-beta3-windowsservercore-1809`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-1809/Dockerfile)

-	`1.12.0-beta3-windowsservercore`, `1.12-rc-windowsservercore`, `rc-windowsservercore`:

	-	[`1.12.0-beta3-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.12.0-beta3-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.12.0-beta3-windowsservercore-1809`](https://github.com/docker-library/julia/blob/09ad25e2f355dd91cbd2f87978800fb90bf0a1c0/1.12-rc/windows/windowsservercore-1809/Dockerfile)

-	`1.11.5`, `1.11`, `1`, `latest`:

	-	[`1.11.5-bookworm`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/bookworm/Dockerfile)
	-	[`1.11.5-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.11.5-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.11.5-windowsservercore-1809`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-1809/Dockerfile)

-	`1.11.5-windowsservercore`, `1.11-windowsservercore`, `1-windowsservercore`, `windowsservercore`:

	-	[`1.11.5-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.11.5-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.11.5-windowsservercore-1809`](https://github.com/docker-library/julia/blob/bd1d1d4ea366ccbfd675e942aed13022abd76eb6/1.11/windows/windowsservercore-1809/Dockerfile)

-	`1.10.9`, `1.10`:

	-	[`1.10.9-bookworm`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/bookworm/Dockerfile)
	-	[`1.10.9-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.10.9-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.10.9-windowsservercore-1809`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-1809/Dockerfile)

-	`1.10.9-windowsservercore`, `1.10-windowsservercore`:

	-	[`1.10.9-windowsservercore-ltsc2025`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`1.10.9-windowsservercore-ltsc2022`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`1.10.9-windowsservercore-1809`](https://github.com/docker-library/julia/blob/6f34d11736ca81e111e3ce285d6d7e08a4742300/1.10/windows/windowsservercore-1809/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/docker-library/julia/issues](https://github.com/docker-library/julia/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/julia/), [`arm64v8`](https://hub.docker.com/r/arm64v8/julia/), [`i386`](https://hub.docker.com/r/i386/julia/), [`ppc64le`](https://hub.docker.com/r/ppc64le/julia/), [`windows-amd64`](https://hub.docker.com/r/winamd64/julia/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/julia/` directory](https://github.com/docker-library/repo-info/blob/master/repos/julia) ([history](https://github.com/docker-library/repo-info/commits/master/repos/julia))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/julia` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fjulia)  
	[official-images repo's `library/julia` file](https://github.com/docker-library/official-images/blob/master/library/julia) ([history](https://github.com/docker-library/official-images/commits/master/library/julia))

-	**Source of this description**:  
	[docs repo's `julia/` directory](https://github.com/docker-library/docs/tree/master/julia) ([history](https://github.com/docker-library/docs/commits/master/julia))

# What is Julia?

Julia is a high-level, high-performance dynamic programming language for technical computing, with syntax that is familiar to users of other technical computing environments. It provides a sophisticated compiler, distributed parallel execution, numerical accuracy, and an extensive mathematical function library.

> [julialang.org](http://julialang.org/)

![logo](https://raw.githubusercontent.com/docker-library/docs/520519ad7db3ea9fd5d3590e836c839a0ffd6f19/julia/logo.png)

# Support Tiers

Platforms supported by Julia are divided into a tier system that ranks them based on level of support. For more dedicated information about support tiers, please see ["Currently supported platforms" on the Julia download page](https://julialang.org/downloads/#currently_supported_platforms).

It's especially relevant to note that Alpine / musl is "Tier 3" due to several known issues (see [docker-library/julia#47 (comment)](https://github.com/docker-library/julia/pull/47#issuecomment-652661869), [JuliaLang/julia#28805](https://github.com/JuliaLang/julia/issues/28805), [JuliaLang/julia#36458](https://github.com/JuliaLang/julia/issues/36458)).

# How to use this image

## Start Julia REPL

Starting the Julia REPL is as easy as the following:

```console
$ docker run -it --rm julia
```

## Run Julia script from your local directory inside container

```console
$ docker run -it --rm -v "$PWD":/usr/myapp -w /usr/myapp julia julia script.jl arg1 arg2
```

# Image Variants

The `julia` images come in many flavors, each designed for a specific use case.

## `julia:<version>`

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.

## `julia:<version>-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.

This variant is useful when final image size being as small as possible is your primary concern. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so software will often run into issues depending on the depth of their libc requirements/assumptions. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

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

## `julia:<version>-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](http://julialang.org/) for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `julia/` directory](https://github.com/docker-library/repo-info/tree/master/repos/julia).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/caddy/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "caddy/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "caddy/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Caddy Docker Maintainers](https://github.com/caddyserver/caddy-docker)

-	**Where to get help**:  
	[the Caddy Community Forums](https://caddy.community)

# Supported tags and respective `Dockerfile` links

(See ["What's the difference between 'Shared' and 'Simple' tags?" in the FAQ](https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags).)

## Simple Tags

-	[`2.10.0-alpine`, `2.10-alpine`, `2-alpine`, `alpine`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/alpine/Dockerfile)

-	[`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-1809`, `2.10-windowsservercore-1809`, `2-windowsservercore-1809`, `windowsservercore-1809`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/1809/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-builder-windowsservercore-1809`, `2.10-builder-windowsservercore-1809`, `2-builder-windowsservercore-1809`, `builder-windowsservercore-1809`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows-builder/1809/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)

## 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-1809`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/1809/Dockerfile)
	-	[`2.10.0-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/ltsc2022/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-1809`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows-builder/1809/Dockerfile)
	-	[`2.10.0-builder-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows-builder/ltsc2022/Dockerfile)

-	`2.10.0-windowsservercore`, `2.10-windowsservercore`, `2-windowsservercore`, `windowsservercore`:

	-	[`2.10.0-windowsservercore-1809`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/1809/Dockerfile)
	-	[`2.10.0-windowsservercore-ltsc2022`](https://github.com/caddyserver/caddy-docker/blob/aa3e73e0731fbca665be75edef9fbb60d3169278/2.10/windows/ltsc2022/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/caddyserver/caddy-docker/issues](https://github.com/caddyserver/caddy-docker/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/caddy/), [`arm32v6`](https://hub.docker.com/r/arm32v6/caddy/), [`arm32v7`](https://hub.docker.com/r/arm32v7/caddy/), [`arm64v8`](https://hub.docker.com/r/arm64v8/caddy/), [`ppc64le`](https://hub.docker.com/r/ppc64le/caddy/), [`riscv64`](https://hub.docker.com/r/riscv64/caddy/), [`s390x`](https://hub.docker.com/r/s390x/caddy/), [`windows-amd64`](https://hub.docker.com/r/winamd64/caddy/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/caddy/` directory](https://github.com/docker-library/repo-info/blob/master/repos/caddy) ([history](https://github.com/docker-library/repo-info/commits/master/repos/caddy))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/caddy` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fcaddy)  
	[official-images repo's `library/caddy` file](https://github.com/docker-library/official-images/blob/master/library/caddy) ([history](https://github.com/docker-library/official-images/commits/master/library/caddy))

-	**Source of this description**:  
	[docs repo's `caddy/` directory](https://github.com/docker-library/docs/tree/master/caddy) ([history](https://github.com/docker-library/docs/commits/master/caddy))

![logo](https://raw.githubusercontent.com/docker-library/docs/7f3881a28c29ed29bb1a38681b95bd785a8a6da5/caddy/logo.png)

# What is Caddy?

[Caddy 2](https://caddyserver.com/) is a powerful, enterprise-ready, open source web server with automatic HTTPS written in Go.

## How to use this image

#### ⚠️ A note about persisted data

Caddy requires write access to two locations: a [data directory](https://caddyserver.com/docs/conventions#data-directory), and a [configuration directory](https://caddyserver.com/docs/conventions#configuration-directory). While it's not necessary to persist the files stored in the configuration directory, it can be convenient. However, it's very important to persist the data directory.

From the docs:

> The data directory must not be treated as a cache. Its contents are not ephemeral or merely for the sake of performance. Caddy stores TLS certificates, private keys, OCSP staples, and other necessary information to the data directory. It should not be purged without an understanding of the implications.

This image provides for two mount-points for volumes: `/data` and `/config`.

In the examples below, a [named volume](https://docs.docker.com/storage/volumes/) `caddy_data` is mounted to `/data`, so that data will be persisted.

Note that named volumes are persisted across container restarts and terminations, so if you move to a new image version, the same data and config directories can be re-used.

### Basic Usage

The default config file simply serves files from `/usr/share/caddy`, so if you want to serve `index.html` from the current working directory:

```console
$ 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
...
$ curl http://localhost/
hello world
```

To override the default [`Caddyfile`](https://github.com/caddyserver/dist/blob/master/config/Caddyfile), you can create one in the subfolder `conf` at `$PWD/conf/Caddyfile` and mount this folder at `/etc/caddy`:

```console
$ docker run -d -p 80:80 \
    -v $PWD/conf:/etc/caddy \
    -v caddy_data:/data \
    caddy
```

#### ⚠️ Do not mount the Caddyfile directly at `/etc/caddy/Caddyfile`

If vim or another editor is used that changes the inode of the edited file, the changes will only be applied within the container when the container is recreated, which is explained in detail in this [Medium article](https://medium.com/@jonsbun/why-need-to-be-careful-when-mounting-single-files-into-a-docker-container-4f929340834). When using such an editor, Caddy's graceful reload functionality might not work as expected, as described in [this issue](https://github.com/caddyserver/caddy/issues/5735#issuecomment-1675896585).

### Automatic TLS with the Caddy image

The default `Caddyfile` only listens to port `80`, and does not set up automatic TLS. However, if you have a domain name for your site, and its A/AAAA DNS records are properly pointed to this machine's public IP, then you can use this command to simply serve a site over HTTPS:

```console
$ 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
```

The key here is that Caddy is able to listen to ports `80` and `443`, both required for the ACME HTTP challenge.

See [Caddy's docs](https://caddyserver.com/docs/automatic-https) for more information on automatic HTTPS support!

### 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`:

```Dockerfile
# note: never use the :latest tag in a production site
FROM caddy:<version>

COPY Caddyfile /etc/caddy/Caddyfile
COPY site /srv
```

#### Adding custom Caddy modules

Caddy is extendable through the use of "modules". See https://caddyserver.com/docs/extending-caddy for full details. You can find a list of available modules on [the Caddy website's download page](https://caddyserver.com/download).

You can use the `:builder` image as a short-cut to building a new Caddy binary:

```Dockerfile
FROM caddy:<version>-builder AS builder

RUN xcaddy build \
    --with github.com/caddyserver/nginx-adapter \
    --with github.com/hairyhenderson/[email protected]

FROM caddy:<version>

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.

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

Note that the "standard" Caddy modules ([`github.com/caddyserver/caddy/master/modules/standard`](https://github.com/caddyserver/caddy/tree/master/modules/standard)) are always included.

### Graceful reloads

Caddy does not require a full restart when configuration is changed. Caddy comes with a [`caddy reload`](https://caddyserver.com/docs/command-line#caddy-reload) command which can be used to reload its configuration with zero downtime.

When running Caddy in Docker, the recommended way to trigger a config reload is by executing the `caddy reload` command in the running container.

First, you'll need to determine your container ID or name. Then, pass the container ID to `docker exec`. The working directory is set to `/etc/caddy` so Caddy can find your Caddyfile without additional arguments.

```console
$ caddy_container_id=$(docker ps | grep caddy | awk '{print $1;}')
$ docker exec -w /etc/caddy $caddy_container_id caddy reload
```

### Linux capabilities

Caddy ships with HTTP/3 support enabled by default. To improve the performance of this UDP based protocol, the underlying quic-go library tries to increase the buffer sizes for its socket. The `NET_ADMIN` capability allows it to override the low default limits of the operating system without having to change kernel parameters via sysctl.

Giving the container this capability is optional and has potential, though unlikely, to have [security implications](https://unix.stackexchange.com/a/508816).

See https://github.com/quic-go/quic-go/wiki/UDP-Buffer-Sizes for more details.

### Docker Compose example

If you prefer to use `docker compose` to run your stack, here's a sample service definition which goes in a file named `compose.yaml`. The configuration assumes you put a custom Caddyfile into `$PWD/conf` as described [above](#basic-usage).

```yaml
services:
  caddy:
    image: caddy:<version>
    restart: unless-stopped
    cap_add:
      - NET_ADMIN
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    volumes:
      - $PWD/conf:/etc/caddy
      - $PWD/site:/srv
      - caddy_data:/data
      - caddy_config:/config

volumes:
  caddy_data:
  caddy_config:
```

Graceful reloads can then be conducted via `docker compose exec -w /etc/caddy caddy caddy reload`.

# Image Variants

The `caddy` images come in many flavors, each designed for a specific use case.

## `caddy:<version>`

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

This variant is useful when final image size being as small as possible is your primary concern. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so software will often run into issues depending on the depth of their libc requirements/assumptions. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

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

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `caddy/` directory](https://github.com/docker-library/repo-info/tree/master/repos/caddy).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/openjdk/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "openjdk/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "openjdk/" combined with a set of templates)

********************************************************************************

-->

# **DEPRECATION NOTICE**

This image is officially deprecated and all users are recommended to find and use suitable replacements ASAP. Some examples of other Official Image alternatives (listed in alphabetical order with no intentional or implied preference):

-	[`amazoncorretto`](https://hub.docker.com/_/amazoncorretto)
-	[`eclipse-temurin`](https://hub.docker.com/_/eclipse-temurin)
-	[`ibm-semeru-runtimes`](https://hub.docker.com/_/ibm-semeru-runtimes)
-	[`ibmjava`](https://hub.docker.com/_/ibmjava)
-	[`sapmachine`](https://hub.docker.com/_/sapmachine)

See [docker-library/openjdk#505](https://github.com/docker-library/openjdk/issues/505) for more information.

The only tags which will continue to receive updates beyond July 2022 will be Early Access builds (which are sourced from [jdk.java.net](https://jdk.java.net/)), as those are not published/supported by any of the above projects.

# Quick reference

-	**Maintained by**:  
	[the Docker Community](https://github.com/docker-library/openjdk)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

(See ["What's the difference between 'Shared' and 'Simple' tags?" in the FAQ](https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags).)

## Simple Tags

-	[`25-ea-22-jdk-oraclelinux9`, `25-ea-22-oraclelinux9`, `25-ea-jdk-oraclelinux9`, `25-ea-oraclelinux9`, `25-jdk-oraclelinux9`, `25-oraclelinux9`, `25-ea-22-jdk-oracle`, `25-ea-22-oracle`, `25-ea-jdk-oracle`, `25-ea-oracle`, `25-jdk-oracle`, `25-oracle`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/oraclelinux9/Dockerfile)

-	[`25-ea-22-jdk-oraclelinux8`, `25-ea-22-oraclelinux8`, `25-ea-jdk-oraclelinux8`, `25-ea-oraclelinux8`, `25-jdk-oraclelinux8`, `25-oraclelinux8`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/oraclelinux8/Dockerfile)

-	[`25-ea-22-jdk-bookworm`, `25-ea-22-bookworm`, `25-ea-jdk-bookworm`, `25-ea-bookworm`, `25-jdk-bookworm`, `25-bookworm`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/bookworm/Dockerfile)

-	[`25-ea-22-jdk-slim-bookworm`, `25-ea-22-slim-bookworm`, `25-ea-jdk-slim-bookworm`, `25-ea-slim-bookworm`, `25-jdk-slim-bookworm`, `25-slim-bookworm`, `25-ea-22-jdk-slim`, `25-ea-22-slim`, `25-ea-jdk-slim`, `25-ea-slim`, `25-jdk-slim`, `25-slim`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/slim-bookworm/Dockerfile)

-	[`25-ea-22-jdk-bullseye`, `25-ea-22-bullseye`, `25-ea-jdk-bullseye`, `25-ea-bullseye`, `25-jdk-bullseye`, `25-bullseye`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/bullseye/Dockerfile)

-	[`25-ea-22-jdk-slim-bullseye`, `25-ea-22-slim-bullseye`, `25-ea-jdk-slim-bullseye`, `25-ea-slim-bullseye`, `25-jdk-slim-bullseye`, `25-slim-bullseye`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/slim-bullseye/Dockerfile)

-	[`25-ea-22-jdk-windowsservercore-ltsc2025`, `25-ea-22-windowsservercore-ltsc2025`, `25-ea-jdk-windowsservercore-ltsc2025`, `25-ea-windowsservercore-ltsc2025`, `25-jdk-windowsservercore-ltsc2025`, `25-windowsservercore-ltsc2025`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2025/Dockerfile)

-	[`25-ea-22-jdk-windowsservercore-ltsc2022`, `25-ea-22-windowsservercore-ltsc2022`, `25-ea-jdk-windowsservercore-ltsc2022`, `25-ea-windowsservercore-ltsc2022`, `25-jdk-windowsservercore-ltsc2022`, `25-windowsservercore-ltsc2022`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2022/Dockerfile)

-	[`25-ea-22-jdk-windowsservercore-1809`, `25-ea-22-windowsservercore-1809`, `25-ea-jdk-windowsservercore-1809`, `25-ea-windowsservercore-1809`, `25-jdk-windowsservercore-1809`, `25-windowsservercore-1809`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-1809/Dockerfile)

-	[`25-ea-22-jdk-nanoserver-ltsc2025`, `25-ea-22-nanoserver-ltsc2025`, `25-ea-jdk-nanoserver-ltsc2025`, `25-ea-nanoserver-ltsc2025`, `25-jdk-nanoserver-ltsc2025`, `25-nanoserver-ltsc2025`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-ltsc2025/Dockerfile)

-	[`25-ea-22-jdk-nanoserver-ltsc2022`, `25-ea-22-nanoserver-ltsc2022`, `25-ea-jdk-nanoserver-ltsc2022`, `25-ea-nanoserver-ltsc2022`, `25-jdk-nanoserver-ltsc2022`, `25-nanoserver-ltsc2022`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-ltsc2022/Dockerfile)

-	[`25-ea-22-jdk-nanoserver-1809`, `25-ea-22-nanoserver-1809`, `25-ea-jdk-nanoserver-1809`, `25-ea-nanoserver-1809`, `25-jdk-nanoserver-1809`, `25-nanoserver-1809`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-1809/Dockerfile)

## Shared Tags

-	`25-ea-22-jdk`, `25-ea-22`, `25-ea-jdk`, `25-ea`, `25-jdk`, `25`:

	-	[`25-ea-22-jdk-oraclelinux9`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/oraclelinux9/Dockerfile)
	-	[`25-ea-22-jdk-windowsservercore-ltsc2025`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`25-ea-22-jdk-windowsservercore-ltsc2022`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`25-ea-22-jdk-windowsservercore-1809`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-1809/Dockerfile)

-	`25-ea-22-jdk-windowsservercore`, `25-ea-22-windowsservercore`, `25-ea-jdk-windowsservercore`, `25-ea-windowsservercore`, `25-jdk-windowsservercore`, `25-windowsservercore`:

	-	[`25-ea-22-jdk-windowsservercore-ltsc2025`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2025/Dockerfile)
	-	[`25-ea-22-jdk-windowsservercore-ltsc2022`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-ltsc2022/Dockerfile)
	-	[`25-ea-22-jdk-windowsservercore-1809`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/windowsservercore-1809/Dockerfile)

-	`25-ea-22-jdk-nanoserver`, `25-ea-22-nanoserver`, `25-ea-jdk-nanoserver`, `25-ea-nanoserver`, `25-jdk-nanoserver`, `25-nanoserver`:

	-	[`25-ea-22-jdk-nanoserver-ltsc2025`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-ltsc2025/Dockerfile)
	-	[`25-ea-22-jdk-nanoserver-ltsc2022`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-ltsc2022/Dockerfile)
	-	[`25-ea-22-jdk-nanoserver-1809`](https://github.com/docker-library/openjdk/blob/02e8a2ffc4f72b17e5f42980b1025c14d17ac9f7/25/jdk/windows/nanoserver-1809/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/docker-library/openjdk/issues](https://github.com/docker-library/openjdk/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/openjdk/), [`arm64v8`](https://hub.docker.com/r/arm64v8/openjdk/), [`windows-amd64`](https://hub.docker.com/r/winamd64/openjdk/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/openjdk/` directory](https://github.com/docker-library/repo-info/blob/master/repos/openjdk) ([history](https://github.com/docker-library/repo-info/commits/master/repos/openjdk))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/openjdk` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fopenjdk)  
	[official-images repo's `library/openjdk` file](https://github.com/docker-library/official-images/blob/master/library/openjdk) ([history](https://github.com/docker-library/official-images/commits/master/library/openjdk))

-	**Source of this description**:  
	[docs repo's `openjdk/` directory](https://github.com/docker-library/docs/tree/master/openjdk) ([history](https://github.com/docker-library/docs/commits/master/openjdk))

# What is OpenJDK?

OpenJDK (Open Java Development Kit) is a free and open source implementation of the Java Platform, Standard Edition (Java SE). OpenJDK is the official reference implementation of Java SE since version 7.

> [wikipedia.org/wiki/OpenJDK](http://en.wikipedia.org/wiki/OpenJDK)

Java is a registered trademark of Oracle and/or its affiliates.

![logo](https://raw.githubusercontent.com/docker-library/docs/a3439b66b7980d1811f6b3835a3c541747172970/openjdk/logo.png)

# How to use this image

## Start a Java instance in your app

The most straightforward way to use this image is to use a Java 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 openjdk:11
COPY . /usr/src/myapp
WORKDIR /usr/src/myapp
RUN javac Main.java
CMD ["java", "Main"]
```

You can then run and build the Docker image:

```console
$ docker build -t my-java-app .
$ docker run -it --rm --name my-running-app my-java-app
```

## Compile your app inside the Docker container

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 openjdk:11 javac Main.java
```

This will add your current directory as a volume to the container, set the working directory to the volume, and run the command `javac Main.java` which will tell Java to compile the code in `Main.java` and output the Java class file to `Main.class`.

## Make JVM respect CPU and RAM limits

On startup the JVM tries to detect the number of available CPU cores and RAM to adjust its internal parameters (like the number of garbage collector threads to spawn) accordingly. When the container is ran with limited CPU/RAM then the standard system API used by the JVM for probing it will return host-wide values. This can cause excessive CPU usage and memory allocation errors with older versions of the JVM.

Inside Linux containers, OpenJDK versions 8 and later can correctly detect the container-limited number of CPU cores and available RAM. For all currently supported OpenJDK versions this is turned on by default.

Inside Windows Server (non-Hyper-V) containers, the limit for the number of available CPU cores doesn't work (it's ignored by Host Compute Service). To set the limit manually the JVM can be started as:

```console
$ start /b /wait /affinity 0x3 path/to/java.exe ...
```

In this example CPU affinity hex mask `0x3` will limit the JVM to 2 CPU cores.

RAM limit is supported by Windows Server containers, but currently the JVM cannot detect it. To prevent excessive memory allocations, `-XX:MaxRAM=...` option must be specified with the value that is not bigger than the containers RAM limit.

## Environment variables with periods in their names

Some shells (notably, [the BusyBox `/bin/sh` included in Alpine Linux](https://github.com/docker-library/openjdk/issues/135)) do not support environment variables with periods in the names (which are technically not POSIX compliant), and thus *strip* them instead of passing them through (as Bash does). If your application requires environment variables of this form, either use `CMD ["java", ...]` directly (no shell), or (install and) use Bash explicitly instead of `/bin/sh`.

# Image Variants

The `openjdk` images come in many flavors, each designed for a specific use case.

## `openjdk:<version>`

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.

## `openjdk:<version>` (from 12 onwards), `openjdk:<version>-oracle` and `openjdk:<version>-oraclelinux8`

Starting with `openjdk:12` the default image as well as the `-oracle` and `-oraclelinux8` variants are based on the official [Oracle Linux 8 image](https://hub.docker.com/_/oraclelinux) which is provided under the GPLv2 as per the [Oracle Linux End User Agreement (EULA)](https://oss.oracle.com/ol8/EULA).

The `-oraclelinux7` variants are based on the official [Oracle Linux 7 image](https://hub.docker.com/_/oraclelinux) which is provided under the GPLv2 as per the [Oracle Linux End User Agreement (EULA)](https://oss.oracle.com/ol7/EULA).

The OpenJDK binaries are built by Oracle and are sourced from the [OpenJDK community](https://openjdk.java.net/). These binaries are licensed under the [GPLv2 with the Classpath Exception](https://openjdk.java.net/legal/gplv2+ce.html).

## `openjdk:<version>-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](http://openjdk.java.net/legal/gplv2+ce.html) for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `openjdk/` directory](https://github.com/docker-library/repo-info/tree/master/repos/openjdk).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/elixir/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "elixir/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "elixir/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Erlang Ecosystem Foundation](https://github.com/erlef/docker-elixir)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

-	[`1.18.3`, `1.18`, `latest`, `1.18.3-otp-27`, `1.18-otp-27`, `otp-27`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/Dockerfile)

-	[`1.18.3-slim`, `1.18-slim`, `slim`, `1.18.3-otp-27-slim`, `1.18-otp-27-slim`, `otp-27-slim`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/slim/Dockerfile)

-	[`1.18.3-alpine`, `1.18-alpine`, `alpine`, `1.18.3-otp-27-alpine`, `1.18-otp-27-alpine`, `otp-27-alpine`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/alpine/Dockerfile)

-	[`1.18.3-otp-25`, `1.18-otp-25`, `otp-25`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-25/Dockerfile)

-	[`1.18.3-otp-25-alpine`, `1.18-otp-25-alpine`, `otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-25-alpine/Dockerfile)

-	[`1.18.3-otp-25-slim`, `1.18-otp-25-slim`, `otp-25-slim`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-25-slim/Dockerfile)

-	[`1.18.3-otp-26`, `1.18-otp-26`, `otp-26`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-26/Dockerfile)

-	[`1.18.3-otp-26-alpine`, `1.18-otp-26-alpine`, `otp-26-alpine`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-26-alpine/Dockerfile)

-	[`1.18.3-otp-26-slim`, `1.18-otp-26-slim`, `otp-26-slim`](https://github.com/erlef/docker-elixir/blob/263d517a95ebbe6671717ef28b5ccccc9360436d/1.18/otp-26-slim/Dockerfile)

-	[`1.17.3`, `1.17`, `1.17.3-otp-27`, `1.17-otp-27`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/Dockerfile)

-	[`1.17.3-slim`, `1.17-slim`, `1.17.3-otp-27-slim`, `1.17-otp-27-slim`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/slim/Dockerfile)

-	[`1.17.3-alpine`, `1.17-alpine`, `1.17.3-otp-27-alpine`, `1.17-otp-27-alpine`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/alpine/Dockerfile)

-	[`1.17.3-otp-25`, `1.17-otp-25`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-25/Dockerfile)

-	[`1.17.3-otp-25-alpine`, `1.17-otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-25-alpine/Dockerfile)

-	[`1.17.3-otp-25-slim`, `1.17-otp-25-slim`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-25-slim/Dockerfile)

-	[`1.17.3-otp-26`, `1.17-otp-26`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-26/Dockerfile)

-	[`1.17.3-otp-26-alpine`, `1.17-otp-26-alpine`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-26-alpine/Dockerfile)

-	[`1.17.3-otp-26-slim`, `1.17-otp-26-slim`](https://github.com/erlef/docker-elixir/blob/70cad0543fc1781daa678c2a8c44bc87a1c38767/1.17/otp-26-slim/Dockerfile)

-	[`1.16.3`, `1.16`, `1.16.3-otp-26`, `1.16-otp-26`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/Dockerfile)

-	[`1.16.3-slim`, `1.16-slim`, `1.16.3-otp-26-slim`, `1.16-otp-26-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/slim/Dockerfile)

-	[`1.16.3-alpine`, `1.16-alpine`, `1.16.3-otp-26-alpine`, `1.16-otp-26-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/alpine/Dockerfile)

-	[`1.16.3-otp-24`, `1.16-otp-24`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-24/Dockerfile)

-	[`1.16.3-otp-24-alpine`, `1.16-otp-24-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-24-alpine/Dockerfile)

-	[`1.16.3-otp-24-slim`, `1.16-otp-24-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-24-slim/Dockerfile)

-	[`1.16.3-otp-25`, `1.16-otp-25`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-25/Dockerfile)

-	[`1.16.3-otp-25-alpine`, `1.16-otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-25-alpine/Dockerfile)

-	[`1.16.3-otp-25-slim`, `1.16-otp-25-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.16/otp-25-slim/Dockerfile)

-	[`1.15.8`, `1.15`, `1.15.8-otp-26`, `1.15-otp-26`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/Dockerfile)

-	[`1.15.8-slim`, `1.15-slim`, `1.15.8-otp-26-slim`, `1.15-otp-26-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/slim/Dockerfile)

-	[`1.15.8-alpine`, `1.15-alpine`, `1.15.8-otp-26-alpine`, `1.15-otp-26-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/alpine/Dockerfile)

-	[`1.15.8-otp-24`, `1.15-otp-24`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-24/Dockerfile)

-	[`1.15.8-otp-24-alpine`, `1.15-otp-24-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-24-alpine/Dockerfile)

-	[`1.15.8-otp-24-slim`, `1.15-otp-24-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-24-slim/Dockerfile)

-	[`1.15.8-otp-25`, `1.15-otp-25`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-25/Dockerfile)

-	[`1.15.8-otp-25-alpine`, `1.15-otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-25-alpine/Dockerfile)

-	[`1.15.8-otp-25-slim`, `1.15-otp-25-slim`](https://github.com/erlef/docker-elixir/blob/f749dfb8a5b1e6945b2369e143107b9ad3b16664/1.15/otp-25-slim/Dockerfile)

-	[`1.14.5`, `1.14`, `1.14.5-otp-26`, `1.14-otp-26`](https://github.com/erlef/docker-elixir/blob/b8a45e284e0032a25e993ff60a8c6ea733848ad1/1.14/Dockerfile)

-	[`1.14.5-slim`, `1.14-slim`, `1.14.5-otp-26-slim`, `1.14-otp-26-slim`](https://github.com/erlef/docker-elixir/blob/b8a45e284e0032a25e993ff60a8c6ea733848ad1/1.14/slim/Dockerfile)

-	[`1.14.5-alpine`, `1.14-alpine`, `1.14.5-otp-26-alpine`, `1.14-otp-26-alpine`](https://github.com/erlef/docker-elixir/blob/b8a45e284e0032a25e993ff60a8c6ea733848ad1/1.14/alpine/Dockerfile)

-	[`1.14.5-otp-24`, `1.14-otp-24`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-24/Dockerfile)

-	[`1.14.5-otp-24-alpine`, `1.14-otp-24-alpine`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-24-alpine/Dockerfile)

-	[`1.14.5-otp-24-slim`, `1.14-otp-24-slim`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-24-slim/Dockerfile)

-	[`1.14.5-otp-25`, `1.14-otp-25`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-25/Dockerfile)

-	[`1.14.5-otp-25-alpine`, `1.14-otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-25-alpine/Dockerfile)

-	[`1.14.5-otp-25-slim`, `1.14-otp-25-slim`](https://github.com/erlef/docker-elixir/blob/af8772135e126d906a96b347d83af796c55bd181/1.14/otp-25-slim/Dockerfile)

-	[`1.13.4`, `1.13`, `1.13.4-otp-24`, `1.13-otp-24`](https://github.com/erlef/docker-elixir/blob/328f4c09d39b06502a90fa0c5bb30d6972593fac/1.13/Dockerfile)

-	[`1.13.4-slim`, `1.13-slim`, `1.13.4-otp-24-slim`, `1.13-otp-24-slim`](https://github.com/erlef/docker-elixir/blob/328f4c09d39b06502a90fa0c5bb30d6972593fac/1.13/slim/Dockerfile)

-	[`1.13.4-alpine`, `1.13-alpine`, `1.13.4-otp-24-alpine`, `1.13-otp-24-alpine`](https://github.com/erlef/docker-elixir/blob/328f4c09d39b06502a90fa0c5bb30d6972593fac/1.13/alpine/Dockerfile)

-	[`1.13.4-otp-25`, `1.13-otp-25`](https://github.com/erlef/docker-elixir/blob/253f56764ed34d41e4279cb741d84dcb4b284a55/1.13/otp-25/Dockerfile)

-	[`1.13.4-otp-25-alpine`, `1.13-otp-25-alpine`](https://github.com/erlef/docker-elixir/blob/253f56764ed34d41e4279cb741d84dcb4b284a55/1.13/otp-25-alpine/Dockerfile)

-	[`1.13.4-otp-25-slim`, `1.13-otp-25-slim`](https://github.com/erlef/docker-elixir/blob/253f56764ed34d41e4279cb741d84dcb4b284a55/1.13/otp-25-slim/Dockerfile)

-	[`1.12.3`, `1.12`, `1.12.3-otp-24`, `1.12-otp-24`](https://github.com/erlef/docker-elixir/blob/a7a9a8ecd02b6e31e93cfa13d8c18de0328f6e1a/1.12/Dockerfile)

-	[`1.12.3-slim`, `1.12-slim`, `1.12.3-otp-24-slim`, `1.12-otp-24-slim`](https://github.com/erlef/docker-elixir/blob/a7a9a8ecd02b6e31e93cfa13d8c18de0328f6e1a/1.12/slim/Dockerfile)

-	[`1.12.3-alpine`, `1.12-alpine`, `1.12.3-otp-24-alpine`, `1.12-otp-24-alpine`](https://github.com/erlef/docker-elixir/blob/a7a9a8ecd02b6e31e93cfa13d8c18de0328f6e1a/1.12/alpine/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/erlef/docker-elixir/issues](https://github.com/erlef/docker-elixir/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/elixir/), [`arm32v7`](https://hub.docker.com/r/arm32v7/elixir/), [`arm64v8`](https://hub.docker.com/r/arm64v8/elixir/), [`i386`](https://hub.docker.com/r/i386/elixir/), [`ppc64le`](https://hub.docker.com/r/ppc64le/elixir/), [`s390x`](https://hub.docker.com/r/s390x/elixir/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/elixir/` directory](https://github.com/docker-library/repo-info/blob/master/repos/elixir) ([history](https://github.com/docker-library/repo-info/commits/master/repos/elixir))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/elixir` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Felixir)  
	[official-images repo's `library/elixir` file](https://github.com/docker-library/official-images/blob/master/library/elixir) ([history](https://github.com/docker-library/official-images/commits/master/library/elixir))

-	**Source of this description**:  
	[docs repo's `elixir/` directory](https://github.com/docker-library/docs/tree/master/elixir) ([history](https://github.com/docker-library/docs/commits/master/elixir))

# What is Elixir?

Elixir is a dynamic, functional language designed for building scalable and maintainable applications.

Elixir leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems, while also being successfully used in web development and the embedded software domain.

> [en.wikipedia.org/wiki/Elixir_(programming_language)](https://en.wikipedia.org/wiki/Elixir_%28programming_language%29)

![logo](https://raw.githubusercontent.com/docker-library/docs/f3ee5318992592f987a289cd72d63ac1807f569d/elixir/logo.png)

# How to use this image

## Run it as the REPL

```console
➸ docker run -it --rm 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
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(snode@elixir)1> System.version
"1.2.1"
iex(snode@elixir)2> :c.uptime
14 seconds
:ok
```

## 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
```

# Image Variants

The `elixir` images come in many flavors, each designed for a specific use case.

## `elixir:<version>`

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

## `elixir:<version>-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.

This variant is useful when final image size being as small as possible is your primary concern. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so software will often run into issues depending on the depth of their libc requirements/assumptions. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

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

# License

Copyright 2012 Plataformatec

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

View [license information](http://www.apache.org/licenses/LICENSE-2.0) for the software contained in this image.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `elixir/` directory](https://github.com/docker-library/repo-info/tree/master/repos/elixir).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/redmine/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "redmine/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "redmine/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Docker Community](https://github.com/docker-library/redmine)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

-	[`6.0.5`, `6.0`, `6`, `latest`, `6.0.5-bookworm`, `6.0-bookworm`, `6-bookworm`, `bookworm`](https://github.com/docker-library/redmine/blob/79fdb4829c95432ad05877fea0b27793b35bfd6f/6.0/bookworm/Dockerfile)

-	[`6.0.5-alpine3.21`, `6.0-alpine3.21`, `6-alpine3.21`, `alpine3.21`, `6.0.5-alpine`, `6.0-alpine`, `6-alpine`, `alpine`](https://github.com/docker-library/redmine/blob/79fdb4829c95432ad05877fea0b27793b35bfd6f/6.0/alpine3.21/Dockerfile)

-	[`6.0.5-alpine3.20`, `6.0-alpine3.20`, `6-alpine3.20`, `alpine3.20`](https://github.com/docker-library/redmine/blob/79fdb4829c95432ad05877fea0b27793b35bfd6f/6.0/alpine3.20/Dockerfile)

-	[`5.1.8`, `5.1`, `5`, `5.1.8-bookworm`, `5.1-bookworm`, `5-bookworm`](https://github.com/docker-library/redmine/blob/a000f11a67e7e7f315398fb83a9262e47998b663/5.1/bookworm/Dockerfile)

-	[`5.1.8-alpine3.21`, `5.1-alpine3.21`, `5-alpine3.21`, `5.1.8-alpine`, `5.1-alpine`, `5-alpine`](https://github.com/docker-library/redmine/blob/a000f11a67e7e7f315398fb83a9262e47998b663/5.1/alpine3.21/Dockerfile)

-	[`5.1.8-alpine3.20`, `5.1-alpine3.20`, `5-alpine3.20`](https://github.com/docker-library/redmine/blob/a000f11a67e7e7f315398fb83a9262e47998b663/5.1/alpine3.20/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/docker-library/redmine/issues](https://github.com/docker-library/redmine/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/redmine/), [`arm32v5`](https://hub.docker.com/r/arm32v5/redmine/), [`arm32v6`](https://hub.docker.com/r/arm32v6/redmine/), [`arm32v7`](https://hub.docker.com/r/arm32v7/redmine/), [`arm64v8`](https://hub.docker.com/r/arm64v8/redmine/), [`i386`](https://hub.docker.com/r/i386/redmine/), [`mips64le`](https://hub.docker.com/r/mips64le/redmine/), [`ppc64le`](https://hub.docker.com/r/ppc64le/redmine/), [`riscv64`](https://hub.docker.com/r/riscv64/redmine/), [`s390x`](https://hub.docker.com/r/s390x/redmine/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/redmine/` directory](https://github.com/docker-library/repo-info/blob/master/repos/redmine) ([history](https://github.com/docker-library/repo-info/commits/master/repos/redmine))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/redmine` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fredmine)  
	[official-images repo's `library/redmine` file](https://github.com/docker-library/official-images/blob/master/library/redmine) ([history](https://github.com/docker-library/official-images/commits/master/library/redmine))

-	**Source of this description**:  
	[docs repo's `redmine/` directory](https://github.com/docker-library/docs/tree/master/redmine) ([history](https://github.com/docker-library/docs/commits/master/redmine))

# What is Redmine?

Redmine is a free and open source, web-based project management and issue tracking tool. It allows users to manage multiple projects and associated subprojects. It features per project wikis and forums, time tracking, and flexible role based access control. It includes a calendar and Gantt charts to aid visual representation of projects and their deadlines. Redmine integrates with various version control systems and includes a repository browser and diff viewer.

> [wikipedia.org/wiki/Redmine](https://en.wikipedia.org/wiki/Redmine)

![logo](https://raw.githubusercontent.com/docker-library/docs/969091c4c590befe236a71d4a7bce5823fff020d/redmine/logo.png)

# How to use this image

## Run Redmine with SQLite3

This is the simplest setup; just run redmine.

```console
$ docker run -d --name some-redmine redmine
```

> not for multi-user production use ([redmine wiki](http://www.redmine.org/projects/redmine/wiki/RedmineInstall#Supported-database-back-ends))

## Run Redmine with a Database Container

Running Redmine with a database server is the recommended way.

1.	start a database container

	-	PostgreSQL

		```console
		$ docker run -d --name some-postgres --network some-network -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=redmine postgres
		```

	-	MySQL (replace `-e REDMINE_DB_POSTGRES=some-postgres` with `-e REDMINE_DB_MYSQL=some-mysql` when running Redmine)

		```console
		$ docker run -d --name some-mysql --network some-network -e MYSQL_USER=redmine -e MYSQL_PASSWORD=secret -e MYSQL_DATABASE=redmine -e MYSQL_RANDOM_ROOT_PASSWORD=1 mysql:5.7
		```

2.	start redmine

	```console
	$ docker run -d --name some-redmine --network some-network -e REDMINE_DB_POSTGRES=some-postgres -e REDMINE_DB_USERNAME=redmine -e REDMINE_DB_PASSWORD=secret redmine
	```

## ... via [`docker compose`](https://github.com/docker/compose)

Example `compose.yaml` for `redmine`:

```yaml
services:

  redmine:
    image: redmine
    restart: always
    ports:
      - 8080:3000
    environment:
      REDMINE_DB_MYSQL: db
      REDMINE_DB_PASSWORD: example
      REDMINE_SECRET_KEY_BASE: supersecretkey

  db:
    image: mysql:8.0
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: example
      MYSQL_DATABASE: redmine
```

Run `docker compose up`, wait for it to initialize completely, and visit `http://localhost:8080` or `http://host-ip:8080` (as appropriate).

## Accessing the Application

Currently, the default user and password from upstream is admin/admin ([logging into the application](https://www.redmine.org/projects/redmine/wiki/RedmineInstall#Step-10-Logging-into-the-application)).

## Where to Store Data

Important note: There are several ways to store data used by applications that run in Docker containers. We encourage users of the `redmine` images to familiarize themselves with the options available, including:

-	Let Docker manage the storage of your files [by writing the files to disk on the host system using its own internal volume management](https://docs.docker.com/storage/volumes/). This is the default and is easy and fairly transparent to the user. The downside is that the files may be hard to locate for tools and applications that run directly on the host system, i.e. outside containers.
-	Create a data directory on the host system (outside the container) and [mount this to a directory visible from inside the container](https://docs.docker.com/storage/bind-mounts/). This places the database files in a known location on the host system, and makes it easy for tools and applications on the host system to access the files. The downside is that the user needs to make sure that the directory exists, and that e.g. directory permissions and other security mechanisms on the host system are set up correctly.

The Docker documentation is a good starting point for understanding the different storage options and variations, and there are multiple blogs and forum postings that discuss and give advice in this area. We will simply show the basic procedure here for the latter option above:

1.	Create a data directory on a suitable volume on your host system, e.g. `/my/own/datadir`.
2.	Start your `redmine` container like this:

	```console
	$ docker run -d --name some-redmine -v /my/own/datadir:/usr/src/redmine/files --link some-postgres:postgres redmine
	```

The `-v /my/own/datadir:/usr/src/redmine/files` part of the command mounts the `/my/own/datadir` directory from the underlying host system as `/usr/src/redmine/files` inside the container, where Redmine will store uploaded files.

## Port Mapping

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. Just add `-p 3000:3000` to the `docker run` arguments and then access either `http://localhost:3000` or `http://host-ip:3000` in a browser.

## Environment Variables

When you start the `redmine` image, you can adjust the configuration of the instance by passing one or more environment variables on the `docker run` command line.

### `REDMINE_DB_MYSQL`, `REDMINE_DB_POSTGRES`, or `REDMINE_DB_SQLSERVER`

These variables allow you to set the hostname or IP address of the MySQL, PostgreSQL, or Microsoft SQL host, respectively. These values are mutually exclusive so it is undefined behavior if any two are set. If no variable is set, the image will fall back to using SQLite.

### `REDMINE_DB_PORT`

This variable allows you to specify a custom database connection port. If unspecified, it will default to the regular connection ports: 3306 for MySQL, 5432 for PostgreSQL, and empty string for SQLite.

### `REDMINE_DB_USERNAME`

This variable sets the user that Redmine and any rake tasks use to connect to the specified database. If unspecified, it will default to `root` for MySQL, `postgres` for PostgreSQL, or `redmine` for SQLite.

### `REDMINE_DB_PASSWORD`

This variable sets the password that the specified user will use in connecting to the database. There is no default value.

### `REDMINE_DB_DATABASE`

This variable sets the database that Redmine will use in the specified database server. If not specified, it will default to `redmine` for MySQL, the value of `REDMINE_DB_USERNAME` for PostgreSQL, or `sqlite/redmine.db` for SQLite.

### `REDMINE_DB_ENCODING`

This variable sets the character encoding to use when connecting to the database server. If unspecified, it will use the default for the `mysql2` library ([`UTF-8`](https://github.com/brianmario/mysql2/tree/18673e8d8663a56213a980212e1092c2220faa92#mysql2---a-modern-simple-and-very-fast-mysql-library-for-ruby---binding-to-libmysql)) for MySQL, `utf8` for PostgreSQL, or `utf8` for SQLite.

### `REDMINE_NO_DB_MIGRATE`

This variable allows you to control if `rake db:migrate` is run on container start. Just set the variable to a non-empty string like `1` or `true` and the migrate script will not automatically run on container start.

`db:migrate` will also not run if you start your image with something other than the default `CMD`, like `bash`. See the current `docker-entrypoint.sh` in your image for details.

### `REDMINE_PLUGINS_MIGRATE`

This variable allows you to control if `rake redmine:plugins:migrate` is run on container start. Just set the variable to a non-empty string like `1` or `true` and the migrate script will be automatically run on every container start. It will be run after `db:migrate`.

`redmine:plugins:migrate` will not run if you start your image with something other than the default `CMD`, like `bash`. See the current `docker-entrypoint.sh` in your image for details.

### `SECRET_KEY_BASE`

This is a general Rails environment variable. This variable is useful when using loadbalanced replicas to maintain session connections. It is "used by Rails to encode cookies storing session data thus preventing their tampering. Generating a new secret token invalidates all existing sessions after restart" ([session store](https://www.redmine.org/projects/redmine/wiki/RedmineInstall#Step-5-Session-store-secret-generation)). If you do not set this variable, then the `secret_key_base` value will be generated using `rake generate_secret_token`.

For backwards compatibility, the deprecated, Docker-specific `REDMINE_SECRET_KEY_BASE` variable will automatically fill the `SECRET_KEY_BASE` environment variable. Users should migrate their deployments to use the `SECRET_KEY_BASE` variable directly.

## Running as an arbitrary user

You can use the [`--user`](https://docs.docker.com/engine/reference/run/#user) flag to `docker run` and give it a `username:group` or `UID:GID`, the user doesn't need to exist in the container.

## Docker Secrets

As an alternative to passing sensitive information via environment variables, `_FILE` may be appended to the previously listed environment variables, causing the initialization script to load the values for those variables from files present in the container. In particular, this can be used to load passwords from Docker secrets stored in `/run/secrets/<secret_name>` files. For example:

```console
$ docker run -d --name some-redmine -e REDMINE_DB_MYSQL_FILE=/run/secrets/mysql-host -e REDMINE_DB_PASSWORD_FILE=/run/secrets/mysql-root redmine:tag
```

Currently, this is only supported for `REDMINE_DB_MYSQL`, `REDMINE_DB_POSTGRES`, `REDMINE_DB_PORT`, `REDMINE_DB_USERNAME`, `REDMINE_DB_PASSWORD`, `REDMINE_DB_DATABASE`, `REDMINE_DB_ENCODING`, and `REDMINE_SECRET_KEY_BASE`.

# Image Variants

The `redmine` images come in many flavors, each designed for a specific use case.

## `redmine:<version>`

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

## `redmine:<version>-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.

This variant is useful when final image size being as small as possible is your primary concern. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so software will often run into issues depending on the depth of their libc requirements/assumptions. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

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

# License

[Redmine](https://www.redmine.org/projects/redmine/wiki) is open source and released under the terms of the [GNU General Public License v2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.html) (GPL).

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `redmine/` directory](https://github.com/docker-library/repo-info/tree/master/repos/redmine).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/tomcat/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "tomcat/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "tomcat/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Docker Community](https://github.com/docker-library/tomcat)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

-	[`11.0.7-jdk21-temurin-noble`, `11.0-jdk21-temurin-noble`, `11-jdk21-temurin-noble`, `jdk21-temurin-noble`, `11.0.7-jdk21-temurin`, `11.0-jdk21-temurin`, `11-jdk21-temurin`, `jdk21-temurin`, `11.0.7-jdk21`, `11.0-jdk21`, `11-jdk21`, `jdk21`, `11.0.7`, `11.0`, `11`, `latest`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jdk21/temurin-noble/Dockerfile)

-	[`11.0.7-jre21-temurin-noble`, `11.0-jre21-temurin-noble`, `11-jre21-temurin-noble`, `jre21-temurin-noble`, `11.0.7-jre21-temurin`, `11.0-jre21-temurin`, `11-jre21-temurin`, `jre21-temurin`, `11.0.7-jre21`, `11.0-jre21`, `11-jre21`, `jre21`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jre21/temurin-noble/Dockerfile)

-	[`11.0.7-jdk21-temurin-jammy`, `11.0-jdk21-temurin-jammy`, `11-jdk21-temurin-jammy`, `jdk21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jdk21/temurin-jammy/Dockerfile)

-	[`11.0.7-jre21-temurin-jammy`, `11.0-jre21-temurin-jammy`, `11-jre21-temurin-jammy`, `jre21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jre21/temurin-jammy/Dockerfile)

-	[`11.0.7-jdk17-temurin-noble`, `11.0-jdk17-temurin-noble`, `11-jdk17-temurin-noble`, `jdk17-temurin-noble`, `11.0.7-jdk17-temurin`, `11.0-jdk17-temurin`, `11-jdk17-temurin`, `jdk17-temurin`, `11.0.7-jdk17`, `11.0-jdk17`, `11-jdk17`, `jdk17`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jdk17/temurin-noble/Dockerfile)

-	[`11.0.7-jre17-temurin-noble`, `11.0-jre17-temurin-noble`, `11-jre17-temurin-noble`, `jre17-temurin-noble`, `11.0.7-jre17-temurin`, `11.0-jre17-temurin`, `11-jre17-temurin`, `jre17-temurin`, `11.0.7-jre17`, `11.0-jre17`, `11-jre17`, `jre17`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jre17/temurin-noble/Dockerfile)

-	[`11.0.7-jdk17-temurin-jammy`, `11.0-jdk17-temurin-jammy`, `11-jdk17-temurin-jammy`, `jdk17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jdk17/temurin-jammy/Dockerfile)

-	[`11.0.7-jre17-temurin-jammy`, `11.0-jre17-temurin-jammy`, `11-jre17-temurin-jammy`, `jre17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/7bfd2b8f99a60b08403a61b8a9c82cf54d92575a/11.0/jre17/temurin-jammy/Dockerfile)

-	[`10.1.41-jdk21-temurin-noble`, `10.1-jdk21-temurin-noble`, `10-jdk21-temurin-noble`, `10.1.41-jdk21-temurin`, `10.1-jdk21-temurin`, `10-jdk21-temurin`, `10.1.41-jdk21`, `10.1-jdk21`, `10-jdk21`, `10.1.41`, `10.1`, `10`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk21/temurin-noble/Dockerfile)

-	[`10.1.41-jre21-temurin-noble`, `10.1-jre21-temurin-noble`, `10-jre21-temurin-noble`, `10.1.41-jre21-temurin`, `10.1-jre21-temurin`, `10-jre21-temurin`, `10.1.41-jre21`, `10.1-jre21`, `10-jre21`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre21/temurin-noble/Dockerfile)

-	[`10.1.41-jdk21-temurin-jammy`, `10.1-jdk21-temurin-jammy`, `10-jdk21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk21/temurin-jammy/Dockerfile)

-	[`10.1.41-jre21-temurin-jammy`, `10.1-jre21-temurin-jammy`, `10-jre21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre21/temurin-jammy/Dockerfile)

-	[`10.1.41-jdk17-temurin-noble`, `10.1-jdk17-temurin-noble`, `10-jdk17-temurin-noble`, `10.1.41-jdk17-temurin`, `10.1-jdk17-temurin`, `10-jdk17-temurin`, `10.1.41-jdk17`, `10.1-jdk17`, `10-jdk17`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk17/temurin-noble/Dockerfile)

-	[`10.1.41-jre17-temurin-noble`, `10.1-jre17-temurin-noble`, `10-jre17-temurin-noble`, `10.1.41-jre17-temurin`, `10.1-jre17-temurin`, `10-jre17-temurin`, `10.1.41-jre17`, `10.1-jre17`, `10-jre17`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre17/temurin-noble/Dockerfile)

-	[`10.1.41-jdk17-temurin-jammy`, `10.1-jdk17-temurin-jammy`, `10-jdk17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk17/temurin-jammy/Dockerfile)

-	[`10.1.41-jre17-temurin-jammy`, `10.1-jre17-temurin-jammy`, `10-jre17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre17/temurin-jammy/Dockerfile)

-	[`10.1.41-jdk11-temurin-noble`, `10.1-jdk11-temurin-noble`, `10-jdk11-temurin-noble`, `10.1.41-jdk11-temurin`, `10.1-jdk11-temurin`, `10-jdk11-temurin`, `10.1.41-jdk11`, `10.1-jdk11`, `10-jdk11`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk11/temurin-noble/Dockerfile)

-	[`10.1.41-jre11-temurin-noble`, `10.1-jre11-temurin-noble`, `10-jre11-temurin-noble`, `10.1.41-jre11-temurin`, `10.1-jre11-temurin`, `10-jre11-temurin`, `10.1.41-jre11`, `10.1-jre11`, `10-jre11`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre11/temurin-noble/Dockerfile)

-	[`10.1.41-jdk11-temurin-jammy`, `10.1-jdk11-temurin-jammy`, `10-jdk11-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jdk11/temurin-jammy/Dockerfile)

-	[`10.1.41-jre11-temurin-jammy`, `10.1-jre11-temurin-jammy`, `10-jre11-temurin-jammy`](https://github.com/docker-library/tomcat/blob/af53019e096060a258b68bd4e35ea4472ab1c1b2/10.1/jre11/temurin-jammy/Dockerfile)

-	[`9.0.105-jdk21-temurin-noble`, `9.0-jdk21-temurin-noble`, `9-jdk21-temurin-noble`, `9.0.105-jdk21-temurin`, `9.0-jdk21-temurin`, `9-jdk21-temurin`, `9.0.105-jdk21`, `9.0-jdk21`, `9-jdk21`, `9.0.105`, `9.0`, `9`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk21/temurin-noble/Dockerfile)

-	[`9.0.105-jre21-temurin-noble`, `9.0-jre21-temurin-noble`, `9-jre21-temurin-noble`, `9.0.105-jre21-temurin`, `9.0-jre21-temurin`, `9-jre21-temurin`, `9.0.105-jre21`, `9.0-jre21`, `9-jre21`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre21/temurin-noble/Dockerfile)

-	[`9.0.105-jdk21-temurin-jammy`, `9.0-jdk21-temurin-jammy`, `9-jdk21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk21/temurin-jammy/Dockerfile)

-	[`9.0.105-jre21-temurin-jammy`, `9.0-jre21-temurin-jammy`, `9-jre21-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre21/temurin-jammy/Dockerfile)

-	[`9.0.105-jdk21-corretto-al2`, `9.0-jdk21-corretto-al2`, `9-jdk21-corretto-al2`, `9.0.105-jdk21-corretto`, `9.0-jdk21-corretto`, `9-jdk21-corretto`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk21/corretto-al2/Dockerfile)

-	[`9.0.105-jdk17-temurin-noble`, `9.0-jdk17-temurin-noble`, `9-jdk17-temurin-noble`, `9.0.105-jdk17-temurin`, `9.0-jdk17-temurin`, `9-jdk17-temurin`, `9.0.105-jdk17`, `9.0-jdk17`, `9-jdk17`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk17/temurin-noble/Dockerfile)

-	[`9.0.105-jre17-temurin-noble`, `9.0-jre17-temurin-noble`, `9-jre17-temurin-noble`, `9.0.105-jre17-temurin`, `9.0-jre17-temurin`, `9-jre17-temurin`, `9.0.105-jre17`, `9.0-jre17`, `9-jre17`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre17/temurin-noble/Dockerfile)

-	[`9.0.105-jdk17-temurin-jammy`, `9.0-jdk17-temurin-jammy`, `9-jdk17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk17/temurin-jammy/Dockerfile)

-	[`9.0.105-jre17-temurin-jammy`, `9.0-jre17-temurin-jammy`, `9-jre17-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre17/temurin-jammy/Dockerfile)

-	[`9.0.105-jdk17-corretto-al2`, `9.0-jdk17-corretto-al2`, `9-jdk17-corretto-al2`, `9.0.105-jdk17-corretto`, `9.0-jdk17-corretto`, `9-jdk17-corretto`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk17/corretto-al2/Dockerfile)

-	[`9.0.105-jdk11-temurin-noble`, `9.0-jdk11-temurin-noble`, `9-jdk11-temurin-noble`, `9.0.105-jdk11-temurin`, `9.0-jdk11-temurin`, `9-jdk11-temurin`, `9.0.105-jdk11`, `9.0-jdk11`, `9-jdk11`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk11/temurin-noble/Dockerfile)

-	[`9.0.105-jre11-temurin-noble`, `9.0-jre11-temurin-noble`, `9-jre11-temurin-noble`, `9.0.105-jre11-temurin`, `9.0-jre11-temurin`, `9-jre11-temurin`, `9.0.105-jre11`, `9.0-jre11`, `9-jre11`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre11/temurin-noble/Dockerfile)

-	[`9.0.105-jdk11-temurin-jammy`, `9.0-jdk11-temurin-jammy`, `9-jdk11-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk11/temurin-jammy/Dockerfile)

-	[`9.0.105-jre11-temurin-jammy`, `9.0-jre11-temurin-jammy`, `9-jre11-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre11/temurin-jammy/Dockerfile)

-	[`9.0.105-jdk11-corretto-al2`, `9.0-jdk11-corretto-al2`, `9-jdk11-corretto-al2`, `9.0.105-jdk11-corretto`, `9.0-jdk11-corretto`, `9-jdk11-corretto`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk11/corretto-al2/Dockerfile)

-	[`9.0.105-jdk8-temurin-noble`, `9.0-jdk8-temurin-noble`, `9-jdk8-temurin-noble`, `9.0.105-jdk8-temurin`, `9.0-jdk8-temurin`, `9-jdk8-temurin`, `9.0.105-jdk8`, `9.0-jdk8`, `9-jdk8`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk8/temurin-noble/Dockerfile)

-	[`9.0.105-jre8-temurin-noble`, `9.0-jre8-temurin-noble`, `9-jre8-temurin-noble`, `9.0.105-jre8-temurin`, `9.0-jre8-temurin`, `9-jre8-temurin`, `9.0.105-jre8`, `9.0-jre8`, `9-jre8`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre8/temurin-noble/Dockerfile)

-	[`9.0.105-jdk8-temurin-jammy`, `9.0-jdk8-temurin-jammy`, `9-jdk8-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk8/temurin-jammy/Dockerfile)

-	[`9.0.105-jre8-temurin-jammy`, `9.0-jre8-temurin-jammy`, `9-jre8-temurin-jammy`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jre8/temurin-jammy/Dockerfile)

-	[`9.0.105-jdk8-corretto-al2`, `9.0-jdk8-corretto-al2`, `9-jdk8-corretto-al2`, `9.0.105-jdk8-corretto`, `9.0-jdk8-corretto`, `9-jdk8-corretto`](https://github.com/docker-library/tomcat/blob/74e7656bc7005c06281ade7ccd1b67dbe05a5802/9.0/jdk8/corretto-al2/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/docker-library/tomcat/issues](https://github.com/docker-library/tomcat/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/tomcat/), [`arm32v7`](https://hub.docker.com/r/arm32v7/tomcat/), [`arm64v8`](https://hub.docker.com/r/arm64v8/tomcat/), [`ppc64le`](https://hub.docker.com/r/ppc64le/tomcat/), [`riscv64`](https://hub.docker.com/r/riscv64/tomcat/), [`s390x`](https://hub.docker.com/r/s390x/tomcat/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/tomcat/` directory](https://github.com/docker-library/repo-info/blob/master/repos/tomcat) ([history](https://github.com/docker-library/repo-info/commits/master/repos/tomcat))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/tomcat` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Ftomcat)  
	[official-images repo's `library/tomcat` file](https://github.com/docker-library/official-images/blob/master/library/tomcat) ([history](https://github.com/docker-library/official-images/commits/master/library/tomcat))

-	**Source of this description**:  
	[docs repo's `tomcat/` directory](https://github.com/docker-library/docs/tree/master/tomcat) ([history](https://github.com/docker-library/docs/commits/master/tomcat))

# What is Tomcat?

Apache Tomcat (or simply Tomcat) is an open source web server and servlet container developed by the Apache Software Foundation (ASF). Tomcat implements the Java Servlet and the JavaServer Pages (JSP) specifications from Oracle, and provides a "pure Java" HTTP web server environment for Java code to run in. In the simplest config Tomcat runs in a single operating system process. The process runs a Java virtual machine (JVM). Every single HTTP request from a browser to Tomcat is processed in the Tomcat process in a separate thread.

> [wikipedia.org/wiki/Apache_Tomcat](https://en.wikipedia.org/wiki/Apache_Tomcat)

![logo](https://raw.githubusercontent.com/docker-library/docs/8e31eb93a02d504d0cfe1da435aa31b377fc627d/tomcat/logo.png)Logo &copy; Apache Software Fountation

# How to use this image.

**Note:** as of [docker-library/tomcat#181](https://github.com/docker-library/tomcat/pull/181), the upstream-provided (example) webapps are *not* enabled by default, per [upstream's security recommendations](https://tomcat.apache.org/tomcat-9.0-doc/security-howto.html#Default_web_applications), but are still available under the `webapps.dist` folder within the image to make them easier to re-enable.

Run the default Tomcat server (`CMD ["catalina.sh", "run"]`):

```console
$ docker run -it --rm tomcat:9.0
```

You can test it by visiting `http://container-ip:8080` in a browser or, if you need access outside the host, on port 8888:

```console
$ docker run -it --rm -p 8888:8080 tomcat:9.0
```

You can then go to `http://localhost:8888` or `http://host-ip:8888` in a browser (noting that it will return a 404 since there are no webapps loaded by default).

The default Tomcat environment in the image is:

	CATALINA_BASE:   /usr/local/tomcat
	CATALINA_HOME:   /usr/local/tomcat
	CATALINA_TMPDIR: /usr/local/tomcat/temp
	JRE_HOME:        /usr
	CLASSPATH:       /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

The configuration files are available in `/usr/local/tomcat/conf/`. By default, no user is included in the "manager-gui" role required to operate the "/manager/html" web application. If you wish to use this app, you must define such a user in `tomcat-users.xml`.

# License

View [license information](https://www.apache.org/licenses/LICENSE-2.0) for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `tomcat/` directory](https://github.com/docker-library/repo-info/tree/master/repos/tomcat).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```

--------------------------------------------------------------------------------
/haxe/README.md:
--------------------------------------------------------------------------------

```markdown
<!--

********************************************************************************

WARNING:

    DO NOT EDIT "haxe/README.md"

    IT IS AUTO-GENERATED

    (from the other files in "haxe/" combined with a set of templates)

********************************************************************************

-->

# Quick reference

-	**Maintained by**:  
	[the Haxe Foundation](https://github.com/HaxeFoundation/docker-library-haxe)

-	**Where to get help**:  
	[the Docker Community Slack](https://dockr.ly/comm-slack), [Server Fault](https://serverfault.com/help/on-topic), [Unix & Linux](https://unix.stackexchange.com/help/on-topic), or [Stack Overflow](https://stackoverflow.com/help/on-topic)

# Supported tags and respective `Dockerfile` links

(See ["What's the difference between 'Shared' and 'Simple' tags?" in the FAQ](https://github.com/docker-library/faq#whats-the-difference-between-shared-and-simple-tags).)

## Simple Tags

-	[`4.3.6-bookworm`, `4.3-bookworm`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/bookworm/Dockerfile)

-	[`4.3.6-bullseye`, `4.3-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/bullseye/Dockerfile)

-	[`4.3.6-windowsservercore-ltsc2022`, `4.3-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-ltsc2022/Dockerfile)

-	[`4.3.6-windowsservercore-1809`, `4.3-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-1809/Dockerfile)

-	[`4.3.6-alpine3.20`, `4.3-alpine3.20`, `4.3.6-alpine`, `4.3-alpine`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/alpine3.20/Dockerfile)

-	[`4.3.6-alpine3.19`, `4.3-alpine3.19`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/alpine3.19/Dockerfile)

-	[`4.3.6-alpine3.18`, `4.3-alpine3.18`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/alpine3.18/Dockerfile)

-	[`4.2.5-bookworm`, `4.2-bookworm`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/bookworm/Dockerfile)

-	[`4.2.5-bullseye`, `4.2-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/bullseye/Dockerfile)

-	[`4.2.5-windowsservercore-ltsc2022`, `4.2-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-ltsc2022/Dockerfile)

-	[`4.2.5-windowsservercore-1809`, `4.2-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-1809/Dockerfile)

-	[`4.2.5-alpine3.20`, `4.2-alpine3.20`, `4.2.5-alpine`, `4.2-alpine`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/alpine3.20/Dockerfile)

-	[`4.2.5-alpine3.19`, `4.2-alpine3.19`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/alpine3.19/Dockerfile)

-	[`4.2.5-alpine3.18`, `4.2-alpine3.18`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/alpine3.18/Dockerfile)

-	[`4.1.5-bullseye`, `4.1-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/5b15afa744e6374bd547252dbc702ebe9aab4ddb/4.1/bullseye/Dockerfile)

-	[`4.1.5-windowsservercore-ltsc2022`, `4.1-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-ltsc2022/Dockerfile)

-	[`4.1.5-windowsservercore-1809`, `4.1-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-1809/Dockerfile)

-	[`4.1.5-alpine3.20`, `4.1-alpine3.20`, `4.1.5-alpine`, `4.1-alpine`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.1/alpine3.20/Dockerfile)

-	[`4.1.5-alpine3.19`, `4.1-alpine3.19`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.1/alpine3.19/Dockerfile)

-	[`4.1.5-alpine3.18`, `4.1-alpine3.18`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.1/alpine3.18/Dockerfile)

-	[`4.0.5-bullseye`, `4.0-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/5b15afa744e6374bd547252dbc702ebe9aab4ddb/4.0/bullseye/Dockerfile)

-	[`4.0.5-windowsservercore-ltsc2022`, `4.0-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-ltsc2022/Dockerfile)

-	[`4.0.5-windowsservercore-1809`, `4.0-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-1809/Dockerfile)

-	[`4.0.5-alpine3.20`, `4.0-alpine3.20`, `4.0.5-alpine`, `4.0-alpine`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.0/alpine3.20/Dockerfile)

-	[`4.0.5-alpine3.19`, `4.0-alpine3.19`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.0/alpine3.19/Dockerfile)

-	[`4.0.5-alpine3.18`, `4.0-alpine3.18`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.0/alpine3.18/Dockerfile)

## Shared Tags

-	`4.3.6`, `4.3`, `latest`:

	-	[`4.3.6-bookworm`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.3/bookworm/Dockerfile)
	-	[`4.3.6-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.3.6-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-1809/Dockerfile)

-	`4.3.6-windowsservercore`, `4.3-windowsservercore`:

	-	[`4.3.6-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.3.6-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/03cdd3f2df8800aff8f28313181564ed9443dedd/4.3/windowsservercore-1809/Dockerfile)

-	`4.2.5`, `4.2`:

	-	[`4.2.5-bookworm`](https://github.com/HaxeFoundation/docker-library-haxe/blob/483c3e2b958d83239d03f4469ea9e745c0852326/4.2/bookworm/Dockerfile)
	-	[`4.2.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.2.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-1809/Dockerfile)

-	`4.2.5-windowsservercore`, `4.2-windowsservercore`:

	-	[`4.2.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.2.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.2/windowsservercore-1809/Dockerfile)

-	`4.1.5`, `4.1`:

	-	[`4.1.5-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/5b15afa744e6374bd547252dbc702ebe9aab4ddb/4.1/bullseye/Dockerfile)
	-	[`4.1.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.1.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-1809/Dockerfile)

-	`4.1.5-windowsservercore`, `4.1-windowsservercore`:

	-	[`4.1.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.1.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.1/windowsservercore-1809/Dockerfile)

-	`4.0.5`, `4.0`:

	-	[`4.0.5-bullseye`](https://github.com/HaxeFoundation/docker-library-haxe/blob/5b15afa744e6374bd547252dbc702ebe9aab4ddb/4.0/bullseye/Dockerfile)
	-	[`4.0.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.0.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-1809/Dockerfile)

-	`4.0.5-windowsservercore`, `4.0-windowsservercore`:

	-	[`4.0.5-windowsservercore-ltsc2022`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-ltsc2022/Dockerfile)
	-	[`4.0.5-windowsservercore-1809`](https://github.com/HaxeFoundation/docker-library-haxe/blob/c0367972017a7b87845bf33477e29b1fe64ccc4a/4.0/windowsservercore-1809/Dockerfile)

# Quick reference (cont.)

-	**Where to file issues**:  
	[https://github.com/HaxeFoundation/docker-library-haxe/issues](https://github.com/HaxeFoundation/docker-library-haxe/issues?q=)

-	**Supported architectures**: ([more info](https://github.com/docker-library/official-images#architectures-other-than-amd64))  
	[`amd64`](https://hub.docker.com/r/amd64/haxe/), [`arm32v7`](https://hub.docker.com/r/arm32v7/haxe/), [`arm64v8`](https://hub.docker.com/r/arm64v8/haxe/), [`windows-amd64`](https://hub.docker.com/r/winamd64/haxe/)

-	**Published image artifact details**:  
	[repo-info repo's `repos/haxe/` directory](https://github.com/docker-library/repo-info/blob/master/repos/haxe) ([history](https://github.com/docker-library/repo-info/commits/master/repos/haxe))  
	(image metadata, transfer size, etc)

-	**Image updates**:  
	[official-images repo's `library/haxe` label](https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fhaxe)  
	[official-images repo's `library/haxe` file](https://github.com/docker-library/official-images/blob/master/library/haxe) ([history](https://github.com/docker-library/official-images/commits/master/library/haxe))

-	**Source of this description**:  
	[docs repo's `haxe/` directory](https://github.com/docker-library/docs/tree/master/haxe) ([history](https://github.com/docker-library/docs/commits/master/haxe))

# What is Haxe?

[Haxe](https://haxe.org) is an open source toolkit based on a modern, high level, strictly typed programming language, a cross-compiler, a complete cross-platform standard library and ways to access each platform's native capabilities.

The Haxe compiler can output a number of source and binary files. As of Haxe 3.4.0-rc.1, the Haxe compiler can target JavaScript, Java, C#, C++, Python, PHP, Flash SWF, ActionScript 3, Lua, and Neko.

![logo](https://raw.githubusercontent.com/docker-library/docs/8ae987dec04fb5ecc15adcba1f9d62b40d0d3ec2/haxe/logo.png)

# About this image

This image ships a minimal Haxe toolkit:

-	the `haxe` compiler with its standard library
-	the `haxelib` library manager
-	the `neko` virtual machine

# How to use this image

The most straightforward way to use this image is to use a Haxe 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 haxe:3.4

RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

# install dependencies
COPY *.hxml /usr/src/app/
RUN yes | haxelib install all

# compile the project
COPY . /usr/src/app
RUN haxe build.hxml

# run the output when the container starts
CMD ["neko", "Main.n"]
```

Then, build and run the Docker image:

```console
$ docker build -t my-haxe-app .
$ docker run -it --rm --name my-running-app my-haxe-app
```

## Using the onbuild variants

There are `onbuild` variants that include multiple `ONBUILD` triggers to perform all of the steps in the above Dockerfile, except there is no `CMD` instruction for running the compilation output.

Rewriting the above Dockerfile with `haxe:3.4-onbuild`, we will get:

```dockerfile
FROM haxe:3.4-onbuild

# run the output when the container starts
CMD ["neko", "Main.n"]
```

The `onbuild` variants assume the main compilation hxml file is named `build.hxml`. To use another hxml file, set the `BUILD_HXML` build argument during build:

```console
$ docker build -t my-haxe-app --build-arg BUILD_HXML=compile.hxml .
```

# Image Variants

The `haxe` images come in many flavors, each designed for a specific use case.

## `haxe:<version>`

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.

## `haxe:<version>-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)

## `haxe:<version>-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.

This variant is useful when final image size being as small as possible is your primary concern. The main caveat to note is that it does use [musl libc](https://musl.libc.org) instead of [glibc and friends](https://www.etalabs.net/compare_libcs.html), so software will often run into issues depending on the depth of their libc requirements/assumptions. See [this Hacker News comment thread](https://news.ycombinator.com/item?id=10782897) for more discussion of the issues that might arise and some pro/con comparisons of using Alpine-based images.

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

# License

View [license information](https://haxe.org/foundation/open-source.html) for the software contained in this image.

As with all Docker images, these likely also contain other software which may be under other licenses (such as Bash, etc from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

Some additional license information which was able to be auto-detected might be found in [the `repo-info` repository's `haxe/` directory](https://github.com/docker-library/repo-info/tree/master/repos/haxe).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

```
Page 7/22FirstPrevNextLast