1# Copyright 2015 gRPC authors. 2# 3# Licensed under the Apache License, Version 2.0 (the "License"); 4# you may not use this file except in compliance with the License. 5# You may obtain a copy of the License at 6# 7# http://www.apache.org/licenses/LICENSE-2.0 8# 9# Unless required by applicable law or agreed to in writing, software 10# distributed under the License is distributed on an "AS IS" BASIS, 11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12# See the License for the specific language governing permissions and 13# limitations under the License. 14 15FROM ubuntu:14.04 16 17RUN apt-get update && apt-get install -y apt-transport-https && apt-get clean 18 19RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF 20RUN echo "deb https://download.mono-project.com/repo/ubuntu stable-trusty main" | tee /etc/apt/sources.list.d/mono-official-stable.list 21 22RUN apt-get update && apt-get install -y \ 23 mono-devel \ 24 nuget \ 25 && apt-get clean 26 27RUN apt-get update && apt-get install -y unzip && apt-get clean 28 29# Install dotnet CLI 30RUN apt-get install -y apt-transport-https 31RUN sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list' 32RUN apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893 33RUN apt-get update && apt-get install -y dotnet-dev-1.0.4 34 35# Trigger the population of the local package cache for dotnet CLI 36RUN mkdir warmup \ 37 && cd warmup \ 38 && dotnet new \ 39 && cd .. \ 40 && rm -rf warmup 41 42# Make sure the mono certificate store is up-to-date to prevent issues with nuget restore 43RUN apt-get update && apt-get install -y curl && apt-get clean 44RUN curl https://curl.haxx.se/ca/cacert.pem > ~/cacert.pem && cert-sync ~/cacert.pem && rm -f ~/cacert.pem 45