@@ -12,9 +12,22 @@ set -e
1212# Clean up
1313rm -rf /var/lib/apt/lists/*
1414
15- ODBC_VERSION=${VERSION:- " latest" }
16-
17- MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc"
15+ ODBC_VERSION=${VERSION:- " 18" }
16+
17+ OS_VERSION_ID=" $( source /etc/os-release; echo " ${ID} :${VERSION_ID} " ) "
18+ case $OS_VERSION_ID in
19+ debian:10) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
20+ debian:11) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
21+ debian:12) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
22+ debian:13) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft-2025.asc" ;;
23+ ubuntu:20.04) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
24+ ubuntu:22.04) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
25+ ubuntu:24.04) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft.asc" ;;
26+ ubuntu:26.04) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft-2025.asc" ;;
27+ * ) MICROSOFT_GPG_KEYS_URI=" https://packages.microsoft.com/keys/microsoft-2025.asc" ;;
28+ esac
29+
30+ echo " using Microsoft GPG key ${MICROSOFT_GPG_KEYS_URI} for ${OS_VERSION_ID} "
1831
1932if [ " $( id -u) " -ne 0 ]; then
2033 echo -e ' Script must be run as root. Use sudo, su, or add "USER root" to your Dockerfile before running this script.'
@@ -51,13 +64,14 @@ export DEBIAN_FRONTEND=noninteractive
5164
5265
5366install_using_apt () {
67+ echo " installing msodbcsql withODBC_VERSION=${ODBC_VERSION} using MICROSOFT_GPG_KEYS_URI=${MICROSOFT_GPG_KEYS_URI} on ${architecture} "
5468 # Install dependencies
5569 check_packages apt-transport-https curl ca-certificates gnupg2 dirmngr
70+
5671 # Import key safely (new 'signed-by' method rather than deprecated apt-key approach) and install
57- get_common_setting MICROSOFT_GPG_KEYS_URI
58- curl -sSL ${MICROSOFT_GPG_KEYS_URI} | gpg --dearmor > /usr/share/keyrings/microsoft-archive-keyring.gpg
72+ curl -sSL ${MICROSOFT_GPG_KEYS_URI} | gpg --dearmor > /usr/share/keyrings/microsoft-prod.gpg
5973
60- echo " deb [arch=${architecture} signed-by=/usr/share/keyrings/microsoft-archive-keyring .gpg] https://packages.microsoft.com/$ID /$VERSION_ID /prod ${VERSION_CODENAME} main" > /etc/apt/sources.list.d/mssql-release.list
74+ echo " deb [arch=${architecture} signed-by=/usr/share/keyrings/microsoft-prod .gpg] https://packages.microsoft.com/$ID /$VERSION_ID /prod ${VERSION_CODENAME} main" > /etc/apt/sources.list.d/mssql-release.list
6175 apt-get update
6276
6377 if [ $ODBC_VERSION -eq " 18" ]; then
0 commit comments