@@ -496,27 +496,53 @@ ARG INSTALL_MSSQL=false
496
496
497
497
RUN set -eux; \
498
498
if [ ${INSTALL_MSSQL} = true ]; then \
499
- apk add --update gnupg \
499
+ apk add --update gnupg; \
500
500
# ##########################################################################
501
501
# Ref from:
502
502
# - https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-ver15#alpine17
503
503
# ##########################################################################
504
+ if [ $(php -r "echo PHP_MAJOR_VERSION;" ) = "7" ]; then \
504
505
# Add Microsoft repo for Microsoft ODBC Driver 17 for Linux
505
- # Driver version 17.5 or higher is required for Alpine support.
506
+ # Driver version 17.10 or higher is required for Alpine support.
507
+ # Download the desired package(s)
508
+ curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.10.5.1-1_amd64.apk \
509
+ # Verify signature, if 'gpg' is missing install it using 'apk add gnupg':
510
+ && curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.10.5.1-1_amd64.sig \
511
+ && curl https://packages.microsoft.com/keys/microsoft.asc | gpg --import - \
512
+ && gpg --verify msodbcsql17_17.10.5.1-1_amd64.sig msodbcsql17_17.10.5.1-1_amd64.apk \
513
+ # Install the package(s)
514
+ && apk add --allow-untrusted msodbcsql17_17.10.5.1-1_amd64.apk unixodbc-dev \
515
+ ;else \
516
+ # Add Microsoft repo for Microsoft ODBC Driver 18 for Linux
517
+ # Driver version 18.5 or higher is required for Alpine support.
506
518
# Download the desired package(s)
507
- && curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1 .1-1_amd64.apk \
519
+ curl -O https://download.microsoft.com/download/3/5/5/355d7943-a338-41a7-858d-53b259ea33f5/msodbcsql18_18.3.2 .1-1_amd64.apk \
508
520
# Verify signature, if 'gpg' is missing install it using 'apk add gnupg':
509
- && curl -O https://download.microsoft.com/download/e/4/e/e4e67866-dffd-428c-aac7-8d28ddafb39b/msodbcsql17_17.8.1 .1-1_amd64.sig \
521
+ && curl -O https://download.microsoft.com/download/3/5/5/355d7943-a338-41a7-858d-53b259ea33f5/msodbcsql18_18.3.2 .1-1_amd64.sig \
510
522
&& curl https://packages.microsoft.com/keys/microsoft.asc | gpg --import - \
511
- && gpg --verify msodbcsql17_17.8.1 .1-1_amd64.sig msodbcsql17_17.8.1 .1-1_amd64.apk \
523
+ && gpg --verify msodbcsql18_18.3.2 .1-1_amd64.sig msodbcsql18_18.3.2 .1-1_amd64.apk \
512
524
# Install the package(s)
513
- && apk add --allow-untrusted msodbcsql17_17.8.1.1-1_amd64.apk unixodbc-dev \
514
- && pecl install sqlsrv pdo_sqlsrv \
525
+ && apk add --allow-untrusted msodbcsql18_18.3.2.1-1_amd64.apk unixodbc-dev \
526
+ ;fi \
527
+ #
528
+ && if [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;" ) = "70000" ]; then \
529
+ pecl install pdo_sqlsrv-5.3.0 sqlsrv-5.3.0 \
530
+ ;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;" ) = "70100" ]; then \
531
+ pecl install pdo_sqlsrv-5.6.1 sqlsrv-5.6.1 \
532
+ ;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;" ) = "70200" ]; then \
533
+ pecl install pdo_sqlsrv-5.8.1 sqlsrv-5.8.1 \
534
+ ;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;" ) = "70300" ]; then \
535
+ pecl install pdo_sqlsrv-5.9.0 sqlsrv-5.9.0 \
536
+ ;elif [ $(php -r "echo PHP_VERSION_ID - PHP_RELEASE_VERSION;" ) = "70400" ]; then \
537
+ pecl install pdo_sqlsrv-5.10.1 sqlsrv-5.10.1 \
538
+ ;else \
539
+ pecl install pdo_sqlsrv sqlsrv \
540
+ ;fi \
515
541
# && echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/10_pdo_sqlsrv.ini
516
542
# && echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/00_sqlsrv.ini
517
543
&& docker-php-ext-enable pdo_sqlsrv sqlsrv \
518
- && php -m | grep -q ' pdo_sqlsrv' \
519
- && php -m | grep -q ' sqlsrv' \
544
+ && php -m | grep -oiE '^ pdo_sqlsrv$ ' \
545
+ && php -m | grep -oiE '^ sqlsrv$ ' \
520
546
;fi
521
547
522
548
# ##########################################################################
0 commit comments