• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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