2017-11-29 16:03:48 +00:00
|
|
|
#
|
|
|
|
# Copyright (c) .NET Foundation and contributors. All rights reserved.
|
|
|
|
# Licensed under the MIT license. See LICENSE file in the project root for full license information.
|
|
|
|
#
|
|
|
|
|
|
|
|
# Dockerfile that creates a container suitable to build dotnet-cli
|
|
|
|
FROM microsoft/dotnet-buildtools-prereqs:alpine-3.6-3148f11-20171119021156
|
|
|
|
|
2018-06-28 04:40:29 +00:00
|
|
|
RUN apk update && apk upgrade && apk add --no-cache curl ncurses
|
|
|
|
|
2017-12-13 11:09:26 +00:00
|
|
|
# This Dockerfile doesn't use the USER_ID, but the parameter needs to be declared to prevent docker
|
|
|
|
# from issuing a warning
|
2017-11-29 16:03:48 +00:00
|
|
|
ARG USER_ID=0
|
2018-06-04 17:36:54 +00:00
|
|
|
RUN adduser code_executor -u ${USER_ID} -G root -D
|
|
|
|
RUN echo 'code_executor ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
|
|
|
|
|
2021-05-26 09:01:25 +00:00
|
|
|
# With the User Change, we need to change permissions on these directories
|
2018-06-04 17:36:54 +00:00
|
|
|
RUN chmod -R a+rwx /usr/local
|
|
|
|
RUN chmod -R a+rwx /home
|
|
|
|
|
2019-09-10 19:33:20 +00:00
|
|
|
# Set working directory
|
|
|
|
ARG WORK_DIR
|
|
|
|
WORKDIR ${WORK_DIR}
|
2017-11-29 16:03:48 +00:00
|
|
|
|
2019-10-01 20:22:33 +00:00
|
|
|
# Set up Azure Artifacts credential provider
|
|
|
|
# We download the installer and execute it using ${USER_ID} so that the installer
|
|
|
|
# put the NuGet plugins in the correct $HOME/.nuget folder.
|
|
|
|
RUN curl -O https://raw.githubusercontent.com/Microsoft/artifacts-credprovider/master/helpers/installcredprovider.sh
|
|
|
|
RUN chmod +x ./installcredprovider.sh
|
|
|
|
|
|
|
|
# Set user to the one we just created
|
|
|
|
USER ${USER_ID}
|
|
|
|
|
|
|
|
RUN ./installcredprovider.sh
|