From f1b28468460fce290b8d32c20faedafe6c9c041e Mon Sep 17 00:00:00 2001 From: Joe Ferguson Date: Mon, 30 Aug 2021 16:16:15 -0700 Subject: [PATCH] Add windowsservercore-ltsc2022 based images --- .../windowsservercore-ltsc2022/Dockerfile | 40 +++++++++++++++++++ .../windowsservercore-ltsc2022/Dockerfile | 40 +++++++++++++++++++ .../windowsservercore-ltsc2022/Dockerfile | 40 +++++++++++++++++++ generate-stackbrew-library.sh | 2 +- update.sh | 2 +- 5 files changed, 122 insertions(+), 2 deletions(-) create mode 100644 1.0/windows/windowsservercore-ltsc2022/Dockerfile create mode 100644 1.6/windows/windowsservercore-ltsc2022/Dockerfile create mode 100644 1.7-rc/windows/windowsservercore-ltsc2022/Dockerfile diff --git a/1.0/windows/windowsservercore-ltsc2022/Dockerfile b/1.0/windows/windowsservercore-ltsc2022/Dockerfile new file mode 100644 index 0000000..f641858 --- /dev/null +++ b/1.0/windows/windowsservercore-ltsc2022/Dockerfile @@ -0,0 +1,40 @@ +FROM mcr.microsoft.com/windows/servercore:ltsc2022 + +# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ENV JULIA_VERSION 1.0.5 +ENV JULIA_SHA256 83c04bdc264e7ab87f4e22be9f3dff8c5a62a49c8edea6a0c85f4645d4cbac7a + +RUN $url = ('https://julialang-s3.julialang.org/bin/winnt/x64/{1}/julia-{0}-win64.exe' -f $env:JULIA_VERSION, ($env:JULIA_VERSION.Split('.')[0..1] -Join '.')); \ + Write-Host ('Downloading {0} ...' -f $url); \ + [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ + Invoke-WebRequest -Uri $url -OutFile 'julia.exe'; \ + \ + Write-Host ('Verifying sha256 ({0}) ...' -f $env:JULIA_SHA256); \ + if ((Get-FileHash julia.exe -Algorithm sha256).Hash -ne $env:JULIA_SHA256) { \ + Write-Host 'FAILED!'; \ + exit 1; \ + }; \ + \ + Write-Host 'Installing ...'; \ + Start-Process -Wait -NoNewWindow \ + -FilePath '.\julia.exe' \ + -ArgumentList @( \ + '/S', \ + '/D=C:\julia' \ + ); \ + \ + Write-Host 'Updating PATH ...'; \ + $env:PATH = 'C:\julia\bin;' + $env:PATH; \ + [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); \ + \ + Write-Host 'Verifying install ("julia --version") ...'; \ + julia --version; \ + \ + Write-Host 'Removing ...'; \ + Remove-Item julia.exe -Force; \ + \ + Write-Host 'Complete.' + +CMD ["julia"] diff --git a/1.6/windows/windowsservercore-ltsc2022/Dockerfile b/1.6/windows/windowsservercore-ltsc2022/Dockerfile new file mode 100644 index 0000000..7743765 --- /dev/null +++ b/1.6/windows/windowsservercore-ltsc2022/Dockerfile @@ -0,0 +1,40 @@ +FROM mcr.microsoft.com/windows/servercore:ltsc2022 + +# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ENV JULIA_VERSION 1.6.2 +ENV JULIA_SHA256 380115d80e2f0bebe1885b80f67cf9330b659722f50608495962ab3a00e02977 + +RUN $url = ('https://julialang-s3.julialang.org/bin/winnt/x64/{1}/julia-{0}-win64.exe' -f $env:JULIA_VERSION, ($env:JULIA_VERSION.Split('.')[0..1] -Join '.')); \ + Write-Host ('Downloading {0} ...' -f $url); \ + [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ + Invoke-WebRequest -Uri $url -OutFile 'julia.exe'; \ + \ + Write-Host ('Verifying sha256 ({0}) ...' -f $env:JULIA_SHA256); \ + if ((Get-FileHash julia.exe -Algorithm sha256).Hash -ne $env:JULIA_SHA256) { \ + Write-Host 'FAILED!'; \ + exit 1; \ + }; \ + \ + Write-Host 'Installing ...'; \ + Start-Process -Wait -NoNewWindow \ + -FilePath '.\julia.exe' \ + -ArgumentList @( \ + '/SILENT', \ + '/DIR=C:\julia' \ + ); \ + \ + Write-Host 'Updating PATH ...'; \ + $env:PATH = 'C:\julia\bin;' + $env:PATH; \ + [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); \ + \ + Write-Host 'Verifying install ("julia --version") ...'; \ + julia --version; \ + \ + Write-Host 'Removing ...'; \ + Remove-Item julia.exe -Force; \ + \ + Write-Host 'Complete.' + +CMD ["julia"] diff --git a/1.7-rc/windows/windowsservercore-ltsc2022/Dockerfile b/1.7-rc/windows/windowsservercore-ltsc2022/Dockerfile new file mode 100644 index 0000000..3996865 --- /dev/null +++ b/1.7-rc/windows/windowsservercore-ltsc2022/Dockerfile @@ -0,0 +1,40 @@ +FROM mcr.microsoft.com/windows/servercore:ltsc2022 + +# $ProgressPreference: https://github.com/PowerShell/PowerShell/issues/2138#issuecomment-251261324 +SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] + +ENV JULIA_VERSION 1.7.0-beta4 +ENV JULIA_SHA256 fb6dcebf9d40c4fa855670fd20f31ecd830282720396c71f98d8ab92d32a94ad + +RUN $url = ('https://julialang-s3.julialang.org/bin/winnt/x64/{1}/julia-{0}-win64.exe' -f $env:JULIA_VERSION, ($env:JULIA_VERSION.Split('.')[0..1] -Join '.')); \ + Write-Host ('Downloading {0} ...' -f $url); \ + [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; \ + Invoke-WebRequest -Uri $url -OutFile 'julia.exe'; \ + \ + Write-Host ('Verifying sha256 ({0}) ...' -f $env:JULIA_SHA256); \ + if ((Get-FileHash julia.exe -Algorithm sha256).Hash -ne $env:JULIA_SHA256) { \ + Write-Host 'FAILED!'; \ + exit 1; \ + }; \ + \ + Write-Host 'Installing ...'; \ + Start-Process -Wait -NoNewWindow \ + -FilePath '.\julia.exe' \ + -ArgumentList @( \ + '/SILENT', \ + '/DIR=C:\julia' \ + ); \ + \ + Write-Host 'Updating PATH ...'; \ + $env:PATH = 'C:\julia\bin;' + $env:PATH; \ + [Environment]::SetEnvironmentVariable('PATH', $env:PATH, [EnvironmentVariableTarget]::Machine); \ + \ + Write-Host 'Verifying install ("julia --version") ...'; \ + julia --version; \ + \ + Write-Host 'Removing ...'; \ + Remove-Item julia.exe -Force; \ + \ + Write-Host 'Complete.' + +CMD ["julia"] diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 0457a9a..6eb132e 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -91,7 +91,7 @@ for version in "${versions[@]}"; do for v in \ {buster,stretch} \ alpine{3.14,3.13} \ - windows/windowsservercore-{1809,ltsc2016} \ + windows/windowsservercore-{ltsc2022,1809,ltsc2016} \ ; do dir="$version/$v" dir="${dir#./}" diff --git a/update.sh b/update.sh index eababfb..149c44a 100755 --- a/update.sh +++ b/update.sh @@ -67,7 +67,7 @@ for version in "${versions[@]}"; do echo "$version: $fullVersion" for v in \ - windows/windowsservercore-{ltsc2016,1809} \ + windows/windowsservercore-{ltsc2022,1809,ltsc2016} \ alpine{3.14,3.13} \ {stretch,buster} \ ; do