Skip to content

Commit e954237

Browse files
authored
Update docker files to align with those from PowerShell (#23158)
1 parent 06decba commit e954237

File tree

6 files changed

+73
-22
lines changed

6 files changed

+73
-22
lines changed

docker/Dockerfile-alpine-3.13 renamed to docker/Dockerfile-alpine-3.16

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/powershell:alpine-3.13
1+
FROM mcr.microsoft.com/powershell:alpine-3.16
22

33
ARG REPOSITORY=PSGallery
44
ARG MODULE=Az
@@ -10,9 +10,9 @@ ARG BUILD_DATE=
1010
ARG VERSION=
1111
ARG LATEST=
1212
ARG BLOB_URL=
13-
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-alpine-3.13
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-alpine-3.16
1414

15-
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-alpine-3.13"
15+
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-alpine-3.16"
1616

1717
LABEL maintainer="Azure PowerShell Team <[email protected]>" \
1818
readme.md="http://aka.ms/azpsdockerreadme" \
@@ -33,7 +33,7 @@ LABEL maintainer="Azure PowerShell Team <[email protected]>" \
3333

3434
RUN if [ "${LATEST}" = True ] ; then \
3535
# install latest azure-powershell from BLOB
36-
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
3737
mkdir latest && \
3838
tar -zxvf ./latest.tar.gz -C ./latest && \
3939
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers ;\

docker/Dockerfile-alpine-3.14 renamed to docker/Dockerfile-alpine-3.17

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/powershell:alpine-3.14
1+
FROM mcr.microsoft.com/powershell:alpine-3.17
22

33
ARG REPOSITORY=PSGallery
44
ARG MODULE=Az
@@ -10,9 +10,9 @@ ARG BUILD_DATE=
1010
ARG VERSION=
1111
ARG LATEST=
1212
ARG BLOB_URL=
13-
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-alpine-3.14
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-alpine-3.17
1414

15-
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-alpine-3.14"
15+
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-alpine-3.17"
1616

1717
LABEL maintainer="Azure PowerShell Team <[email protected]>" \
1818
readme.md="http://aka.ms/azpsdockerreadme" \
@@ -33,7 +33,7 @@ LABEL maintainer="Azure PowerShell Team <[email protected]>" \
3333

3434
RUN if [ "${LATEST}" = True ] ; then \
3535
# install latest azure-powershell from BLOB
36-
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
3737
mkdir latest && \
3838
tar -zxvf ./latest.tar.gz -C ./latest && \
3939
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers;\

docker/Dockerfile-debian-10 renamed to docker/Dockerfile-debian-12

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/powershell:debian-10
1+
FROM mcr.microsoft.com/powershell:debian-12
22

33
ARG REPOSITORY=PSGallery
44
ARG MODULE=Az
@@ -10,9 +10,9 @@ ARG BUILD_DATE=
1010
ARG VERSION=
1111
ARG LATEST=
1212
ARG BLOB_URL=
13-
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-debian-10
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-debian-12
1414

15-
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-debian-10"
15+
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-debian-12"
1616

1717
LABEL maintainer="Azure PowerShell Team <[email protected]>" \
1818
readme.md="http://aka.ms/azpsdockerreadme" \
@@ -33,7 +33,7 @@ LABEL maintainer="Azure PowerShell Team <[email protected]>" \
3333

3434
RUN if [ "${LATEST}" = True ] ; then \
3535
# install latest azure-powershell from BLOB
36-
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
3737
mkdir latest && \
3838
tar -zxvf ./latest.tar.gz -C ./latest && \
3939
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers ;\
@@ -47,4 +47,4 @@ RUN if [ "${LATEST}" = True ] ; then \
4747
# create AzureRmContextSettings.json before it was generated
4848
COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS}
4949

50-
CMD [ "pwsh" ]
50+
CMD [ "pwsh" ]

docker/Dockerfile-mariner-2-arm64

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ ARG BUILD_DATE=
1010
ARG VERSION=
1111
ARG LATEST=
1212
ARG BLOB_URL=
13-
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-mariner-2.0
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-mariner-2.0-arm64
1414

1515
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-mariner-2.0"
1616

@@ -33,10 +33,10 @@ LABEL maintainer="Azure PowerShell Team <[email protected]>" \
3333

3434
RUN if [ "${LATEST}" = True ] ; then \
3535
# install latest azure-powershell from BLOB
36-
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
3737
mkdir latest && \
3838
tdnf install -y tar gzip && \
39-
tdnf clean all && \
39+
tdnf clean all && \
4040
tar -zxvf ./latest.tar.gz -C ./latest && \
4141
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers ;\
4242
else \
@@ -49,4 +49,4 @@ RUN if [ "${LATEST}" = True ] ; then \
4949
# create AzureRmContextSettings.json before it was generated
5050
COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS}
5151

52-
CMD [ "pwsh" ]
52+
CMD [ "pwsh" ]

docker/Dockerfile-centos-7 renamed to docker/Dockerfile-ubi-8

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM mcr.microsoft.com/powershell:centos-7
1+
FROM mcr.microsoft.com/powershell:ubi-8
22

33
ARG REPOSITORY=PSGallery
44
ARG MODULE=Az
@@ -10,9 +10,9 @@ ARG BUILD_DATE=
1010
ARG VERSION=
1111
ARG LATEST=
1212
ARG BLOB_URL=
13-
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-centos-7
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-ubi-8
1414

15-
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-centos-7"
15+
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-ubi-8"
1616

1717
LABEL maintainer="Azure PowerShell Team <[email protected]>" \
1818
readme.md="http://aka.ms/azpsdockerreadme" \
@@ -33,7 +33,7 @@ LABEL maintainer="Azure PowerShell Team <[email protected]>" \
3333

3434
RUN if [ "${LATEST}" = True ] ; then \
3535
# install latest azure-powershell from BLOB
36-
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
3737
mkdir latest && \
3838
tar -zxvf ./latest.tar.gz -C ./latest && \
3939
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers ;\
@@ -43,7 +43,8 @@ RUN if [ "${LATEST}" = True ] ; then \
4343
pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Scope AllUsers -Repository ${REPOSITORY} && \
4444
pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted ;\
4545
fi
46+
4647
# create AzureRmContextSettings.json before it was generated
4748
COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS}
4849

49-
CMD [ "pwsh" ]
50+
CMD [ "pwsh" ]

docker/Dockerfile-ubi-9

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
FROM mcr.microsoft.com/powershell:ubi-9
2+
3+
ARG REPOSITORY=PSGallery
4+
ARG MODULE=Az
5+
ARG CONFIG=config
6+
ARG AZURERM_CONTEXT_SETTINGS=AzureRmContextSettings.json
7+
ARG AZURE=/root/.Azure
8+
ARG VCS_REF="none"
9+
ARG BUILD_DATE=
10+
ARG VERSION=
11+
ARG LATEST=
12+
ARG BLOB_URL=
13+
ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-ubi-9
14+
15+
ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-ubi-9"
16+
17+
LABEL maintainer="Azure PowerShell Team <[email protected]>" \
18+
readme.md="http://aka.ms/azpsdockerreadme" \
19+
description="This Dockerfile will install the latest release of Azure PowerShell." \
20+
org.label-schema.build-date=${BUILD_DATE} \
21+
org.label-schema.usage="http://aka.ms/azpsdocker" \
22+
org.label-schema.url="http://aka.ms/azpsdockerreadme" \
23+
org.label-schema.vcs-url="https://github.com/Azure/azure-powershell" \
24+
org.label-schema.name="azure powershell" \
25+
org.label-schema.vendor="Azure PowerShell" \
26+
org.label-schema.version=${VERSION} \
27+
org.label-schema.schema-version="1.0" \
28+
org.label-schema.vcs-ref=${VCS_REF} \
29+
org.label-schema.docker.cmd="docker run --rm ${IMAGE_NAME} pwsh -c '\$PSVERSIONTABLE'" \
30+
org.label-schema.docker.cmd.devel="docker run -it --rm -e 'DebugPreference=Continue' ${IMAGE_NAME} pwsh" \
31+
org.label-schema.docker.cmd.test="currently not available" \
32+
org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help"
33+
34+
RUN if [ "${LATEST}" = True ] ; then \
35+
# install latest azure-powershell from BLOB
36+
pwsh -Command Invoke-WebRequest -uri ${BLOB_URL} -OutFile latest.tar.gz && \
37+
mkdir latest && \
38+
tar -zxvf ./latest.tar.gz -C ./latest && \
39+
pwsh -Command ./latest/InstallModule.ps1 -Scope AllUsers ;\
40+
else \
41+
# install old azure-powershell from PSGallery
42+
pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \
43+
pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Scope AllUsers -Repository ${REPOSITORY} && \
44+
pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted ;\
45+
fi
46+
47+
# create AzureRmContextSettings.json before it was generated
48+
COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS}
49+
50+
CMD [ "pwsh" ]

0 commit comments

Comments
 (0)