From b23cfa2f3e80cea9bd1a3dcc35607f455347976f Mon Sep 17 00:00:00 2001 From: Jan Tattermusch Date: Mon, 1 Oct 2018 17:04:52 +0200 Subject: fix and polish artifact dockerfiles --- .../dockerfile/grpc_artifact_linux_x64/Dockerfile | 18 +------ .../dockerfile/grpc_artifact_linux_x86/Dockerfile | 9 +--- .../grpc_artifact_node_linux_x64/Dockerfile | 63 ++++++++++++++++++++++ .../grpc_artifact_node_linux_x86/Dockerfile | 55 +++++++++++++++++++ 4 files changed, 121 insertions(+), 24 deletions(-) create mode 100644 tools/dockerfile/grpc_artifact_node_linux_x64/Dockerfile create mode 100644 tools/dockerfile/grpc_artifact_node_linux_x86/Dockerfile (limited to 'tools/dockerfile') diff --git a/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile b/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile index 0251b2b392..228efef698 100644 --- a/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile +++ b/tools/dockerfile/grpc_artifact_linux_x64/Dockerfile @@ -16,10 +16,8 @@ FROM debian:jessie -RUN apt-get update && apt-get install debian-keyring && apt-key update - # Install Git and basic packages. -RUN apt-get update && apt-key update && apt-get install -y \ +RUN apt-get update && apt-get install -y \ autoconf \ autotools-dev \ build-essential \ @@ -46,11 +44,6 @@ RUN apt-get update && apt-key update && apt-get install -y \ wget \ zip && apt-get clean -# Install Node dependencies -RUN touch .profile -RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash -RUN /bin/bash -l -c "nvm install 8 && npm install -g node-pre-gyp" - ################## # Ruby dependencies @@ -72,15 +65,8 @@ RUN /bin/bash -l -c "gem install bundler --no-ri --no-rdoc" # PHP dependencies RUN apt-get update && apt-get install -y \ - php5 php5-dev php-pear phpunit - -################## -# Install cross compiler for ARM - -RUN echo 'deb http://emdebian.org/tools/debian/ jessie main' | tee -a /etc/apt/sources.list.d/crosstools.list && \ - curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | apt-key add - + php5 php5-dev php-pear phpunit && apt-get clean -RUN dpkg --add-architecture armhf && apt-get update && apt-get install -y crossbuild-essential-armhf RUN mkdir /var/local/jenkins diff --git a/tools/dockerfile/grpc_artifact_linux_x86/Dockerfile b/tools/dockerfile/grpc_artifact_linux_x86/Dockerfile index 2d179c8c45..d33e0f83ea 100644 --- a/tools/dockerfile/grpc_artifact_linux_x86/Dockerfile +++ b/tools/dockerfile/grpc_artifact_linux_x86/Dockerfile @@ -16,10 +16,8 @@ FROM 32bit/debian:jessie -RUN apt-get update && apt-get install debian-keyring && apt-key update - # Install Git and basic packages. -RUN apt-get update && apt-key update && apt-get install -y \ +RUN apt-get update && apt-get install -y \ autoconf \ autotools-dev \ build-essential \ @@ -46,11 +44,6 @@ RUN apt-get update && apt-key update && apt-get install -y \ wget \ zip && apt-get clean -# Install Node dependencies -RUN touch .profile -RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash -RUN /bin/bash -l -c "nvm install 8 && npm install -g node-pre-gyp" - ################## # Ruby dependencies diff --git a/tools/dockerfile/grpc_artifact_node_linux_x64/Dockerfile b/tools/dockerfile/grpc_artifact_node_linux_x64/Dockerfile new file mode 100644 index 0000000000..5c531a776c --- /dev/null +++ b/tools/dockerfile/grpc_artifact_node_linux_x64/Dockerfile @@ -0,0 +1,63 @@ +# Copyright 2016 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Docker file for building gRPC artifacts. + +FROM debian:stretch + +# Install Git and basic packages. +RUN apt-get update && apt-get install -y \ + autoconf \ + autotools-dev \ + build-essential \ + bzip2 \ + clang \ + curl \ + gcc \ + gcc-multilib \ + git \ + golang \ + libc6 \ + libc6-dbg \ + libc6-dev \ + libgtest-dev \ + libtool \ + make \ + perl \ + strace \ + python-dev \ + python-setuptools \ + python-yaml \ + telnet \ + unzip \ + wget \ + zip && apt-get clean + +# Install Node dependencies +RUN touch .profile +RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash +RUN /bin/bash -l -c "nvm install 8 && npm install -g node-pre-gyp" + +################## +# Install cross compiler for ARM + +RUN echo 'deb http://emdebian.org/tools/debian/ jessie main' | tee -a /etc/apt/sources.list.d/crosstools.list && \ + curl http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | apt-key add - + +RUN dpkg --add-architecture armhf && apt-get update && apt-get install -y crossbuild-essential-armhf && apt-get clean + +RUN mkdir /var/local/jenkins + +# Define the default command. +CMD ["bash"] diff --git a/tools/dockerfile/grpc_artifact_node_linux_x86/Dockerfile b/tools/dockerfile/grpc_artifact_node_linux_x86/Dockerfile new file mode 100644 index 0000000000..400fef4379 --- /dev/null +++ b/tools/dockerfile/grpc_artifact_node_linux_x86/Dockerfile @@ -0,0 +1,55 @@ +# Copyright 2016 gRPC authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Docker file for building gRPC artifacts. + +FROM i386/debian:stretch + +# Install Git and basic packages. +RUN apt-get update && apt-get install -y \ + autoconf \ + autotools-dev \ + build-essential \ + bzip2 \ + clang \ + curl \ + gcc \ + gcc-multilib \ + git \ + golang \ + libc6 \ + libc6-dbg \ + libc6-dev \ + libgtest-dev \ + libtool \ + make \ + perl \ + strace \ + python-dev \ + python-setuptools \ + python-yaml \ + telnet \ + unzip \ + wget \ + zip && apt-get clean + +# Install Node dependencies +RUN touch .profile +RUN curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.25.4/install.sh | bash +RUN /bin/bash -l -c "nvm install 8 && npm install -g node-pre-gyp" + +RUN mkdir /var/local/jenkins + +# Define the default command. +CMD ["bash"] -- cgit v1.2.3