github.com/joey-fossa/fossa-cli@v0.7.34-0.20190708193710-569f1e8679f0/docker/buildtools/Dockerfile (about)

     1  # This Dockerfile provides all build tools that FOSSA CLI invokes. It's useful
     2  # for developing the FOSSA CLI on machines that may not have all the necessary
     3  # build tools.
     4  FROM fossa/fossa-cli:base
     5  
     6  # Workaround for add-apt-repository (see
     7  # https://github.com/oerdnj/deb.sury.org/issues/56).
     8  ENV LC_ALL=C.UTF-8 DEBIAN_FRONTEND=noninteractive 
     9  
    10  # Install build tool and fixture requirements.
    11  RUN sudo apt-get update && \
    12      sudo apt-get install -y \
    13      # Build tools
    14      apt-transport-https build-essential libssl-dev software-properties-common \
    15      # Rails (nokogiri)
    16      zlib1g-dev liblzma-dev libncurses5-dev libtool autoconf libxml2-dev \
    17      libmysqlclient-dev postgresql-server-dev-all libsqlite3-dev
    18  
    19  # Install JVM version manager.
    20  RUN sudo apt-get install -y zip unzip && \
    21      curl https://get.sdkman.io | bash
    22  
    23  # Install JVM runtimes and build tools.
    24  RUN ["/bin/bash", "-c", "\
    25      source $HOME/.sdkman/bin/sdkman-init.sh && \
    26      # Install Java runtime and build tools
    27      sdk install java && \
    28      sdk install maven && \
    29      sdk install gradle && \
    30      sdk install ant && \
    31      # Install Scala runtime and build tools
    32      sdk install scala && \
    33      sdk install sbt \
    34      "]
    35  RUN mkdir -p $HOME/.sbt/1.0/plugins && \
    36      echo 'addSbtPlugin("net.virtual-void" % "sbt-dependency-graph" % "0.9.0")' > $HOME/.sbt/1.0/plugins/plugins.sbt
    37  
    38  # Install Android SDK.
    39  RUN wget https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip -O /tmp/sdk-tools-linux.zip && \
    40      mkdir -p $HOME/Android/Sdk && \
    41      unzip /tmp/sdk-tools-linux.zip -d $HOME/Android/Sdk
    42  ENV PATH=$PATH:/home/fossa/Android/Sdk/tools/bin ANDROID_HOME=/home/fossa/Android/Sdk
    43  
    44  # Install additional Go build tools.
    45  RUN curl https://glide.sh/get | bash && \
    46      go get -u -v github.com/tools/godep && \
    47      go get -u -v github.com/kardianos/govendor && \
    48      go get -u -v github.com/LK4D4/vndr && \
    49      go get -u -v github.com/sparrc/gdm
    50  
    51  # Install Node.js runtime.
    52  RUN wget https://nodejs.org/dist/v8.12.0/node-v8.12.0-linux-x64.tar.xz -O /tmp/node.tar.xz && \
    53      sudo tar -xf /tmp/node.tar.xz -C /usr/local --strip-components=1 --no-same-owner && \
    54      sudo ln -s /usr/local/bin/node /usr/local/bin/nodejs && \
    55      mkdir $HOME/.npm && \
    56      npm config set prefix $HOME/.npm
    57  ENV PATH=$PATH:/home/fossa/.npm/bin
    58  
    59  # Install Node.js build + debugging tools.
    60  RUN npm i -g bower yarn json
    61  
    62  # Install Ruby runtime.
    63  RUN sudo apt-get install -y ruby-full
    64  
    65  # Install Ruby build tools.
    66  RUN sudo gem install bundler
    67  
    68  # Install Python runtime.
    69  RUN sudo apt-get install -y python python-pip
    70  
    71  # Install Cocoapods.
    72  RUN sudo gem install cocoapods -v 1.5.3
    73  
    74  # Install PHP runtime.
    75  RUN sudo add-apt-repository -y ppa:ondrej/php && \
    76      sudo apt-get update && \
    77      sudo DEBIAN_FRONTEND=noninteractive apt-get install -y \
    78      php7.2 php7.2-gd php7.2-curl php7.2-intl php7.2-xml php7.2-mbstring
    79  
    80  # Install PHP build tools.
    81  RUN curl https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer && \
    82      sudo chown -R fossa:fossa $HOME/.composer
    83  
    84  # Install NuGet.
    85  RUN sudo apt-key adv --keyserver packages.microsoft.com --recv-keys EB3E94ADBE1229CF && \
    86      sudo apt-key adv --keyserver packages.microsoft.com --recv-keys 52E16F86FEE04B979B07E28DB02C46DF417A0893 && \
    87      sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-bionic-prod bionic main" > /etc/apt/sources.list.d/dotnetdev.list' && \
    88      sudo apt-get update && \
    89      sudo apt-get install -y dotnet-sdk-2.1