PowerShell/docker/release/ubuntu14.04/Dockerfile
Jan Pazdziora ebc7cdf847 Make the build step fail when the curl operation fails. (#6961)
Without the pipefail, the step always succeeds and the layer gets
cached, resulting in confusion during the next step failing and
subsequent rebuild attempt.
2018-06-04 13:18:07 -07:00

59 lines
2.4 KiB
Docker

# Docker image file that describes an Ubuntu14.04 image with PowerShell installed from Microsoft APT Repo
ARG FromTag=14.04
FROM ubuntu:${FromTag}
ARG POWERSHELL_VERSION=6.0.2
ARG POWERSHELL_VERSION_POSTFIX=-1.ubuntu.14.04
ARG IMAGE_NAME=microsoft/powershell:ubuntu14.04
LABEL maintainer="PowerShell Team <powershellteam@hotmail.com>" \
readme.md="https://github.com/PowerShell/PowerShell/blob/master/docker/README.md" \
description="This Dockerfile will install the latest release of PS." \
org.label-schema.usage="https://github.com/PowerShell/PowerShell/tree/master/docker#run-the-docker-image-you-built" \
org.label-schema.url="https://github.com/PowerShell/PowerShell/blob/master/docker/README.md" \
org.label-schema.vcs-url="https://github.com/PowerShell/PowerShell" \
org.label-schema.name="powershell" \
org.label-schema.vendor="PowerShell" \
org.label-schema.version=${POWERSHELL_VERSION} \
org.label-schema.schema-version="1.0" \
org.label-schema.docker.cmd="docker run ${IMAGE_NAME} pwsh -c '$psversiontable'" \
org.label-schema.docker.cmd.devel="docker run ${IMAGE_NAME}" \
org.label-schema.docker.cmd.test="docker run ${IMAGE_NAME} pwsh -c Invoke-Pester" \
org.label-schema.docker.cmd.help="docker run ${IMAGE_NAME} pwsh -c Get-Help"
# TODO: addd LABEL org.label-schema.vcs-ref=${VCS_REF}
# Setup the locale
ENV LANG en_US.UTF-8
ENV LC_ALL $LANG
RUN locale-gen $LANG && update-locale
# Install dependencies and clean up
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
apt-utils \
ca-certificates \
curl \
apt-transport-https \
&& apt-get dist-upgrade -y \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Import the public repository GPG keys for Microsoft
RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -
# Register the Microsoft Ubuntu 14.04 repository
RUN set -o pipefail \
&& curl https://packages.microsoft.com/config/ubuntu/14.04/prod.list | tee /etc/apt/sources.list.d/microsoft.list
# Install powershell from Microsoft Repo
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
powershell=${POWERSHELL_VERSION}${POWERSHELL_VERSION_POSTFIX} \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
# Use PowerShell as the default shell
# Use array to avoid Docker prepending /bin/sh -c
CMD [ "pwsh" ]