It's now possible to change the registries used by the install-tool
and prepare-tool
commands.
This can be done by url replacements.
You can find the default urls in the tool sections below.
The number of URL_REPLACE_*_FROM
and URL_REPLACE_*_TO
environment variables must match.
Theses variables are case sensitive.
The numbers will be processed in numerical order and can have gaps.
FROM containerbase/base
ENV URL_REPLACE_5_FROM=https://storage.googleapis.com/dart-archive/channels/stable/release/
ENV URL_REPLACE_5_TO=https://artifactory.proxy.test/virtual/dart-archive/
ENV URL_REPLACE_0_FROM=https://download.docker.com/linux/static/stable/
ENV URL_REPLACE_0_TO=https://artifactory.proxy.test/virtual/docker-com/
# renovate: datasource=github-releases packageName=moby/moby
RUN install-tool docker v24.0.2
# renovate: datasource=docker
RUN install-tool dart 2.18.0
GitHub releases are redirecting from https://github.com/<org>/<repo>/releases/<version>/<file>
to https://objects.githubusercontent.com/<some-url>
which seems to be an Amazon S3 bucket.
Bazelisk releases are downloaded from:
https://github.com/bazelbuild/bazelisk/releases
Samples:
https://github.com/bazelbuild/bazelisk/releases/v1.19.0/bazelisk-linux-amd64
https://github.com/bazelbuild/bazelisk/releases/v1.19.0/bazelisk-linux-arm64
Bun releases are downloaded from:
https://github.com/oven-sh/bun/releases
Samples:
https://github.com/oven-sh/bun/releases/bun-v1.0.0/bun-linux-x64.zip
https://github.com/oven-sh/bun/releases/bun-v1.0.0/bun-linux-aarch64.zip
https://github.com/oven-sh/bun/releases/bun-v1.0.0/SHASUMS256.txt
Dart releases are downloaded from:
https://storage.googleapis.com/dart-archive/channels/stable/release
Samples:
https://storage.googleapis.com/dart-archive/channels/stable/release/1.11.0/sdk/dartsdk-linux-x64-release.zip
https://storage.googleapis.com/dart-archive/channels/stable/release/2.18.0/sdk/dartsdk-linux-x64-release.zip
https://storage.googleapis.com/dart-archive/channels/stable/release/2.19.4/sdk/dartsdk-linux-x64-release.zip.sha256sum
https://storage.googleapis.com/dart-archive/channels/stable/release/2.19.4/sdk/dartsdk-linux-arm64-release.zip
https://storage.googleapis.com/dart-archive/channels/stable/release/2.19.4/sdk/dartsdk-linux-arm64-release.zip.sha256sum
Docker releases are downloaded from:
https://download.docker.com/linux/static/stable
Samples:
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.7.tgz
https://download.docker.com/linux/static/stable/aarch64/docker-24.0.5.tgz
Dotnet releases are downloaded from:
https://dotnetcli.azureedge.net/dotnet/Sdk
Samples:
https://dotnetcli.azureedge.net/dotnet/Sdk/6.0.413/dotnet-sdk-6.0.413-linux-x64.tar.gz
https://dotnetcli.azureedge.net/dotnet/Sdk/6.0.413/dotnet-sdk-6.0.413-linux-arm64.tar.gz
Erlang releases are downloaded from:
https://github.com/containerbase/erlang-prebuild/releases
Samples:
https://github.com/containerbase/erlang-prebuild/releases/25.3.2.8/erlang-25.3.2.8-jammy-x86_x64.tar.xz.sha512
https://github.com/containerbase/erlang-prebuild/releases/25.3.2.8/erlang-25.3.2.8-jammy-x86_x64.tar.xz
Elixir releases are downloaded from:
https://github.com/elixir-lang/elixir/releases
Samples:
https://github.com/elixir-lang/elixir/releases/v1.16.0/elixir-otp-24.zip
https://github.com/elixir-lang/elixir/releases/v1.14.0/elixir-otp-23.zip
https://github.com/elixir-lang/elixir/releases/v1.13.0/Precompiled.zip
Flutter releases are downloaded from:
https://github.com/containerbase/flutter-prebuild/releases
Samples:
https://github.com/containerbase/flutter-prebuild/releases/3.13.7/flutter-3.13.7-x86_64.tar.xz
https://github.com/containerbase/flutter-prebuild/releases/3.13.7/flutter-3.13.7-x86_64.tar.xz.sha512
https://github.com/containerbase/flutter-prebuild/releases/3.13.7/flutter-3.13.7-aarch64.tar.xz
https://github.com/containerbase/flutter-prebuild/releases/3.13.7/flutter-3.13.7-aarch64.tar.xz.sha512
Flux releases are downloaded from:
https://github.com/fluxcd/flux2/releases
Samples:
https://github.com/fluxcd/flux2/releases/v0.19.0/flux_0.19.0_linux_amd64.tar.gz
https://github.com/fluxcd/flux2/releases/v2.1.0/flux_2.1.0_linux_arm64.tar.gz
Git is downloaded from:
http://ppa.launchpad.net/git-core/ppa/ubuntu
Git is installed via apt
package manager.
Git LFS releases are downloaded from:
https://github.com/git-lfs/git-lfs/releases
Samples:
https://github.com/git-lfs/git-lfs/releases/v3.4.1/git-lfs-linux-amd64-v3.4.1.tar.gz
Gleam releases are downloaded from:
https://github.com/gleam-lang/gleam/releases/download
Samples:
https://github.com/gleam-lang/gleam/releases/download/v0.34.1/gleam-v0.34.1-aarch64-unknown-linux-musl.tar.gz
https://github.com/gleam-lang/gleam/releases/download/v0.34.1/gleam-v0.34.1-aarch64-unknown-linux-musl.tar.gz.sha512
https://github.com/gleam-lang/gleam/releases/download/v0.34.1/gleam-v0.34.1-x86_64-unknown-linux-musl.tar.gz
https://github.com/gleam-lang/gleam/releases/download/v0.34.1/gleam-v0.34.1-x86_64-unknown-linux-musl.tar.gz.sha512
Go releases are downloaded from:
https://github.com/containerbase/golang-prebuild/releases
https://dl.google.com/go/
https://go.dev/dl/?mode=json&include=all
The second url is used as fallback for older versions. The third url is used to find the checksums.
Samples:
https://github.com/containerbase/golang-prebuild/releases/download/1.22.5/golang-1.22.5-x86_64.tar.xz.sha512
https://github.com/containerbase/golang-prebuild/releases/download/1.22.5/golang-1.22.5-x86_64.tar.xz
https://github.com/containerbase/golang-prebuild/releases/download/1.22.5/golang-1.22.5-aarch64.tar.xz.sha512
https://github.com/containerbase/golang-prebuild/releases/download/1.22.5/golang-1.22.5-aarch64.tar.xz
https://go.dev/dl/?mode=json&include=all
https://dl.google.com/go/go1.21.6.linux-arm64.tar.gz
https://dl.google.com/go/go1.17.5.linux-amd64.tar.gz
Helm releases are downloaded from:
https://get.helm.sh
Samples:
https://get.helm.sh/helm-v3.7.1-linux-amd64.tar.gz
Helmfile releases are downloaded from:
https://github.com/helmfile/helmfile/releases
Samples:
https://github.com/helmfile/helmfile/releases/download/v0.161.0/helmfile_0.161.0_linux_amd64.tar.gz
Java releases are downloaded from:
https://api.adoptium.net/v3/assets/version/
https://github.com/adoptium/temurin<major>-binaries/releases
Each major version has it's own GitHub repository.
Samples:
https://api.adoptium.net/v3/assets/version/21.0.1+12.0.LTS?architecture=x86_64&image_type=jre&heap_size=normal&os=linux&page=0&page_size=1&project=jdk&semver=true
https://api.adoptium.net/v3/assets/version/11.0.22+7?architecture=x86_64&image_type=jdk&heap_size=normal&os=linux&page=0&page_size=1&project=jdk&semver=true
https://github.com/adoptium/temurin21-binaries/releases/jdk-21.0.1%2B12/OpenJDK21U-jre_x64_linux_hotspot_21.0.1_12.tar.gz
https://github.com/adoptium/temurin11-binaries/releases/jdk-11.0.22%2B7/OpenJDK11U-jdk_x64_linux_hotspot_11.0.22_7.tar.gz
Gradle releases are downloaded from:
https://services.gradle.org/distributions
https://services.gradle.org/versions/current
The second url is only used when latest
is passed as version.
Then we try to find the latest version from the that url.
Samples:
https://services.gradle.org/versions/current
https://services.gradle.org/distributions/gradle-8.5-bin.zip
https://services.gradle.org/distributions/gradle-6.9.4-bin.zip
Maven releases are downloaded from:
https://github.com/containerbase/maven-prebuild/releases
https://archive.apache.org/dist/maven
The first url is preferred and the second is used as fallback for older versions.
Samples:
https://github.com/containerbase/maven-prebuild/releases/download/3.0.4/maven-3.0.4.tar.xz.sha512
https://github.com/containerbase/maven-prebuild/releases/download/3.0.4/maven-3.0.4.tar.xz
https://github.com/containerbase/maven-prebuild/releases/latest/download/version
https://archive.apache.org/dist/maven/maven-3/3.0.4/binaries/apache-maven-3.0.4-bin.tar.gz
https://archive.apache.org/dist/maven/maven-3/3.0.4/binaries/apache-maven-3.0.4-bin.tar.gz.sha1
https://archive.apache.org/dist/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar
https://archive.apache.org/dist/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz.sha512
SBT releases are downloaded from:
https://github.com/sbt/sbt/releases
Samples:
https://github.com/sbt/sbt/releases/download/v1.5.5/sbt-1.5.5.tgz
Scala releases are downloaded from:
https://downloads.lightbend.com
https://github.com/lampepfl/dotty/releases
The second url will be used soon for scala v3.
Samples:
https://downloads.lightbend.com/scala/2.13.6/scala-2.13.6.tgz
jsonnet-bundler releases are downloaded from:
https://github.com/jsonnet-bundler/jsonnet-bundler/releases
Samples:
https://github.com/jsonnet-bundler/jsonnet-bundler/releases/download/v0.5.1/jb-linux-amd64
Kustomize releases are downloaded from:
https://github.com/kubernetes-sigs/kustomize/releases
Samples:
https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv5.3.0/kustomize_v5.3.0_linux_amd64.tar.gz
Nix releases are downloaded from:
https://github.com/containerbase/nix-prebuild/releases
Samples:
https://github.com/containerbase/nix-prebuild/releases/2.24.2/node-2.24.2-x86_x64.tar.xz.sha512
https://github.com/containerbase/nix-prebuild/releases/2.24.2/node-2.24.2-aarch64.tar.xz
https://github.com/containerbase/nix-prebuild/releases/2.24.2/node-2.24.2-x86_x64.tar.xz.sha512
https://github.com/containerbase/nix-prebuild/releases/2.24.2/node-2.24.2-aarch64.tar.xz
Node releases are downloaded from:
https://github.com/containerbase/node-prebuild/releases
https://nodejs.org/dist
The first url is preferred and the second is used as fallback for older versions.
Samples:
https://github.com/containerbase/node-prebuild/releases/18.12.0/node-18.12.0-jammy-x86_x64.tar.xz.sha512
https://github.com/containerbase/node-prebuild/releases/18.12.0/node-18.12.0-jammy-aarch64.tar.xz
https://github.com/containerbase/node-prebuild/releases/18.12.0/node-18.12.0-focal-x86_x64.tar.xz.sha512
https://github.com/containerbase/node-prebuild/releases/18.12.0/node-18.12.0-focal-aarch64.tar.xz
https://nodejs.org/dist/v20.0.0/SHASUMS256.txt
https://nodejs.org/dist/v20.0.0/node-v20.0.0-linux-x64.tar.xz
https://nodejs.org/dist/v20.0.0/node-v20.0.0-linux-arm64.tar.xz
https://nodejs.org/dist/index.json
The url https://nodejs.org/dist/index.json
is used to find the latest version if no version was provided.
Npm tools are downloaded from:
https://registry.npmjs.org
https://github.com/containerbase/node-re2-prebuild/releases
(renovate only)
Those tools are installed via npm
package manager.
Known tools:
bower
corepack
lerna
npm
pnpm
renovate
yarn
yarn-slim
The install-npm
command uses those urls too.
Renovate additionally uses the following urls for downloading re2
binaries.
https://github.com/containerbase/node-re2-prebuild/releases/1.20.9/linux-arm64-115.br
https://github.com/containerbase/node-re2-prebuild/releases/1.20.9/linux-x64-108.br
PHP releases are downloaded from:
https://github.com/containerbase/php-prebuild/releases
Samples:
https://github.com/containerbase/php-prebuild/releases/8.3.2/php-8.3.2-jammy-x86_x64.tar.xz.sha512
https://github.com/containerbase/php-prebuild/releases/8.3.2/php-8.3.2-jammy-x86_x64.tar.xz
Composer releases are downloaded from:
https://github.com/containerbase/composer-prebuild/releases
https://getcomposer.org/versions
The first url is used for downloads.
The last url is only used when latest
or nothing is passed as version.
Then we try to find the latest version from getcomposer.org.
Samples:
https://github.com/containerbase/composer-prebuild/releases/2.7.7/composer-2.7.7.tar.xz.sha512
https://github.com/containerbase/composer-prebuild/releases/2.7.7/composer-2.7.7.tar.xz
https://getcomposer.org/versions
Powershell releases are downloaded from:
https://github.com/PowerShell/PowerShell/releases
Samples:
https://github.com/PowerShell/PowerShell/releases/download/v7.4.1/powershell-7.4.1-linux-arm64.tar.gz
https://github.com/PowerShell/PowerShell/releases/download/v7.4.1/powershell-7.4.1-linux-x64.tar.gz
https://github.com/PowerShell/PowerShell/releases/download/v7.4.1/hashes.sha256
Python releases are downloaded from:
https://github.com/containerbase/python-prebuild/releases
https://pypi.org/simple
The second url is used to install and update global pip
and virtualenv
packages of the python package.
Samples:
https://github.com/containerbase/python-prebuild/releases/3.12.1/python-3.12.1-jammy-x86_x64.tar.xz.sha512
https://github.com/containerbase/python-prebuild/releases/3.12.1/python-3.12.1-jammy-x86_x64.tar.xz
Pip tools are downloaded from:
https://pypi.org/simple
Those tools are installed via pip
package manager.
Known tools:
checkov
conan
hashin
pdm
pip-tools
pipenv
poetry
Ruby releases are downloaded from:
https://github.com/containerbase/ruby-prebuild/releases
Samples:
https://github.com/containerbase/ruby-prebuild/releases/3.0.3/ruby-3.0.3-jammy-x86_x64.tar.xz.sha512
https://github.com/containerbase/ruby-prebuild/releases/3.0.3/ruby-3.0.3-jammy-x86_x64.tar.xz
Gem tools are downloaded from:
https://rubygems.org
Those tools are installed via gem
package manager.
Known tools:
bundler
cocoapods
The install-gem
command uses those urls too.
Rust releases are downloaded from:
https://static.rust-lang.org/dist/
Samples:
https://static.rust-lang.org/dist/rust-1.75.0-aarch64-unknown-linux-gnu.tar.gz
https://static.rust-lang.org/dist/rust-1.75.0-x86_64-unknown-linux-gnu.tar.gz
Swift releases are downloaded from:
https://download.swift.org
Samples:
https://download.swift.org/swift-5.7-release/ubuntu2204/swift-5.7-RELEASE/swift-5.7-RELEASE-ubuntu22.04.tar.gz
Terraform releases are downloaded from:
https://releases.hashicorp.com
Samples:
https://releases.hashicorp.com/terraform/1.0.11/terraform_1.0.11_linux_amd64.zip
https://releases.hashicorp.com/terraform/1.0.11/terraform_1.0.11_linux_arm64.zip
Vendir releases are downloaded from:
https://github.com/vmware-tanzu/carvel-vendir/releases
Samples:
https://github.com/vmware-tanzu/carvel-vendir/releases/download/v0.22.0/vendir-linux-amd64