|
1 | 1 | # escape=` |
2 | 2 | ARG WINDOWS_VERSION |
3 | | -FROM mcr.microsoft.com/windows/servercore:${WINDOWS_VERSION} AS installer |
4 | | -SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"] |
| 3 | +FROM diamol/windows-deps:2e-windows-${WINDOWS_VERSION}-amd64 AS windows-deps |
5 | 4 |
|
| 5 | +FROM mcr.microsoft.com/windows/nanoserver:${WINDOWS_VERSION} AS installer |
6 | 6 | ARG PROMETHEUS_VERSION |
7 | | -ARG PROMETHEUS_WINDOWS_DOWNLOAD_SHA256 |
8 | | - |
9 | | -RUN Write-Host "Downloading Prometheus version: $env:PROMETHEUS_VERSION"; ` |
10 | | - Invoke-WebRequest "https://github.com/prometheus/prometheus/releases/download/v$($env:PROMETHEUS_VERSION)/prometheus-$($env:PROMETHEUS_VERSION).windows-amd64.zip" -OutFile 'prometheus.tar.gz' -UseBasicParsing; ` |
11 | | - if ((Get-FileHash prometheus.tar.gz -Algorithm sha256).Hash.ToLower() -ne $env:PROMETHEUS_WINDOWS_DOWNLOAD_SHA256) {exit 1} |
12 | | - |
13 | | - |
14 | | -RUN mkdir "C:\prometheus-$($env:PROMETHEUS_VERSION).windows-amd64"; ` |
15 | | - tar xf prometheus.tar.gz; ` |
16 | | - Rename-Item -Path "C:\prometheus-$($env:PROMETHEUS_VERSION).windows-amd64" -NewName 'C:\prometheus' |
| 7 | +USER ContainerAdministrator |
| 8 | +RUN echo "Downloading Prometheus version: %PROMETHEUS_VERSION%" && ` |
| 9 | + curl -sSL -o prometheus.zip "https://github.com/prometheus/prometheus/releases/download/v%PROMETHEUS_VERSION%/prometheus-%PROMETHEUS_VERSION%.windows-amd64.zip" |
| 10 | +WORKDIR /prometheus |
| 11 | +RUN tar -xf /prometheus.zip --strip-components 1 |
17 | 12 |
|
18 | 13 | # Prometheus |
19 | | -ARG WINDOWS_VERSION |
20 | 14 | FROM mcr.microsoft.com/windows/nanoserver:${WINDOWS_VERSION} |
21 | 15 |
|
22 | | -COPY --from=installer /windows/system32/netapi32.dll /windows/system32/netapi32.dll |
23 | | -COPY --from=installer /prometheus/prometheus.exe /bin/prometheus.exe |
24 | | -COPY --from=installer /prometheus/promtool.exe /bin/promtool.exe |
25 | | -COPY --from=installer /prometheus/prometheus.yml /etc/prometheus/prometheus.yml |
26 | | -COPY --from=installer /prometheus/console_libraries/ /etc/prometheus/ |
27 | | -COPY --from=installer /prometheus/consoles/ /etc/prometheus/ |
| 16 | +COPY --from=windows-deps /netapi32.dll /windows/system32/netapi32.dll |
| 17 | +COPY --from=installer /prometheus/prometheus.exe /bin/prometheus.exe |
| 18 | +COPY --from=installer /prometheus/promtool.exe /bin/promtool.exe |
| 19 | +COPY --from=installer /prometheus/prometheus.yml /etc/prometheus/prometheus.yml |
| 20 | +COPY --from=installer /prometheus/console_libraries/ /etc/prometheus/ |
| 21 | +COPY --from=installer /prometheus/consoles/ /etc/prometheus/ |
28 | 22 |
|
29 | 23 | EXPOSE 9090 |
30 | 24 | VOLUME C:\prometheus |
|
0 commit comments