Repository: thrift Updated Branches: refs/heads/master 6cdbd98b7 -> 763841b4d
THRIFT-3042: Dockerfiles fail to build Client: build Patch: Jfarrell Updates Dockerfiles for Ubuntu and Centos to latest versions Project: http://git-wip-us.apache.org/repos/asf/thrift/repo Commit: http://git-wip-us.apache.org/repos/asf/thrift/commit/763841b4 Tree: http://git-wip-us.apache.org/repos/asf/thrift/tree/763841b4 Diff: http://git-wip-us.apache.org/repos/asf/thrift/diff/763841b4 Branch: refs/heads/master Commit: 763841b4dd83f7f100b469f2d879b86d2cbfb84a Parents: 6cdbd98 Author: jfarrell <[email protected]> Authored: Wed Jun 24 09:11:54 2015 -0400 Committer: jfarrell <[email protected]> Committed: Wed Jun 24 09:11:54 2015 -0400 ---------------------------------------------------------------------- build/docker/centos/Dockerfile | 55 +++++++++++-------------------------- build/docker/ubuntu/Dockerfile | 18 +++++++----- 2 files changed, 27 insertions(+), 46 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/thrift/blob/763841b4/build/docker/centos/Dockerfile ---------------------------------------------------------------------- diff --git a/build/docker/centos/Dockerfile b/build/docker/centos/Dockerfile index 999a98f..36c474f 100644 --- a/build/docker/centos/Dockerfile +++ b/build/docker/centos/Dockerfile @@ -15,9 +15,10 @@ # Known missing client libraries: # - D # - Haxe +# - Lua # -FROM centos:6.6 +FROM centos:7 MAINTAINER Apache Thrift <[email protected]> ENV HOME /root @@ -25,21 +26,12 @@ ENV HOME /root RUN yum -y update # General dependencies -RUN yum -y install -y tar m4 perl gcc git libtool libevent-devel zlib-devel openssl-devel +RUN yum -y install -y tar m4 perl gcc git libtool zlib-devel openssl-devel autoconf make bison bison-devel flex RUN mkdir -p /tmp/epel && \ - curl -SL "http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm" -o /tmp/epel/epel-release-6-8.noarch.rpm && \ + curl -sSL "http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm" -o /tmp/epel/epel-release-7-5.noarch.rpm && \ cd /tmp/epel && \ - rpm -ivh epel-release-6-8.noarch.rpm && \ - cd $HOME - -# Autoconf -RUN mkdir -p /tmp/autoconf && \ - curl -SL "http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz" | tar -xzC /tmp/autoconf && \ - cd /tmp/autoconf/autoconf-2.69 && \ - ./configure --prefix=/usr && \ - make && \ - make install && \ + rpm -ivh epel-release*.rpm && \ cd $HOME # Automake @@ -51,22 +43,8 @@ RUN mkdir -p /tmp/automake && \ make install && \ cd $HOME -# Bison -RUN mkdir -p /tmp/bison && \ - curl -SL "http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz" | tar -xzC /tmp/bison && \ - cd /tmp/bison/bison-2.5.1 && \ - ./configure --prefix=/usr && \ - make && \ - make install && \ - cd $HOME - -# Install an updated Boost library -RUN mkdir -p /tmp/boost && \ - curl -SL "http://sourceforge.net/projects/boost/files/boost/1.55.0/boost_1_55_0.tar.gz" | tar -xzC /tmp/boost && \ - cd /tmp/boost/boost_1_55_0 && \ - ./bootstrap.sh && \ - ./b2 install && \ - cd $HOME +# C++ dependencies +RUN yum install -y libboost-dev libevent-devel # Java Dependencies RUN yum install -y ant junit ant-nodeps ant-junit java-1.7.0-openjdk-devel @@ -93,26 +71,25 @@ RUN yum install -y glib2-devel # Erlang Dependencies RUN yum install -y erlang-kernel erlang-erts erlang-stdlib erlang-eunit erlang-rebar -# Lua Dependencies -RUN yum install -y lua-devel - # Go Dependencies -RUN yum install -y golang golang-pkg-linux-amd64 +RUN curl -sSL https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz | tar -C /usr/lib/ -xz && \ + mkdir -p /usr/share/go + +ENV GOROOT /usr/lib/go +ENV GOPATH /usr/share/go +ENV PATH ${GOROOT}/bin:${GOPATH}/bin:$PATH # C# Dependencies RUN yum install -y mono-core mono-devel mono-web-devel mono-extras mingw32-binutils mingw32-runtime mingw32-nsis # Haskell Dependencies -RUN mkdir -p /tmp/haskell &&\ - curl -SL "http://sherkin.justhub.org/el6/RPMS/x86_64/justhub-release-2.0-4.0.el6.x86_64.rpm" -o /tmp/haskell/justhub-release-2.0-4.0.el6.x86_64.rpm && \ - cd /tmp/haskell && \ - rpm -ivh justhub-release-2.0-4.0.el6.x86_64.rpm && \ - yum -y install haskell && \ +RUN yum -y install cabal-dev && \ cabal update && \ cabal install cabal-install && \ cd $HOME # Clean up -RUN rm -rf /tmp/* +RUN rm -rf /tmp/* && \ + yum clean all WORKDIR $HOME \ No newline at end of file http://git-wip-us.apache.org/repos/asf/thrift/blob/763841b4/build/docker/ubuntu/Dockerfile ---------------------------------------------------------------------- diff --git a/build/docker/ubuntu/Dockerfile b/build/docker/ubuntu/Dockerfile index eff474f..cbfb2be 100644 --- a/build/docker/ubuntu/Dockerfile +++ b/build/docker/ubuntu/Dockerfile @@ -25,18 +25,19 @@ RUN apt-get update -y && apt-get dist-upgrade -y # General dependencies RUN apt-get install -y automake libtool flex bison pkg-config g++ libssl-dev make libqt4-dev git \ - debhelper + debhelper cmake # C++ dependencies RUN apt-get install -y libboost-dev libboost-test-dev libboost-program-options-dev \ - libboost-filesystem-dev libboost-system-dev libevent-dev + libboost-filesystem-dev libboost-system-dev libboost-thread-dev libevent-dev # Java dependencies RUN apt-get install -y ant openjdk-7-jdk maven && \ update-java-alternatives -s java-1.7.0-openjdk-amd64 # Python dependencies -RUN apt-get install -y python-all python-all-dev python-all-dbg python-setuptools python-support +RUN apt-get install -y python-all python-all-dev python-all-dbg python-setuptools python-support \ + python-twisted python-zope.interface # Ruby dependencies RUN apt-get install -y ruby ruby-dev && \ @@ -55,8 +56,12 @@ RUN apt-get install -y libglib2.0-dev RUN apt-get install -y erlang-base erlang-eunit erlang-dev # GO dependencies -RUN echo "golang-go golang-go/dashboard boolean false" | debconf-set-selections && \ - apt-get install -y golang golang-go +RUN curl -sSL https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz | tar -C /usr/lib/ -xz && \ + mkdir -p /usr/share/go + +ENV GOROOT /usr/lib/go +ENV GOPATH /usr/share/go +ENV PATH ${GOROOT}/bin:${GOPATH}/bin:$PATH # Haskell dependencies RUN apt-get install -y ghc cabal-install libghc-binary-dev libghc-network-dev libghc-http-dev \ @@ -64,13 +69,12 @@ RUN apt-get install -y ghc cabal-install libghc-binary-dev libghc-network-dev li cabal update # Haxe -RUN apt-get install -y libneko0 && \ +RUN apt-get install -y neko neko-dev libneko0 && \ mkdir -p /tmp/haxe /usr/lib/haxe && \ curl http://haxe.org/website-content/downloads/3,1,3/downloads/haxe-3.1.3-linux64.tar.gz -o /tmp/haxe/haxe-3.1.3-linux64.tar.gz && \ tar -xvzf /tmp/haxe/haxe-3.1.3-linux64.tar.gz -C /usr/lib/haxe --strip-components=1 && \ ln -s /usr/lib/haxe/haxe /usr/bin/haxe && \ ln -s /usr/lib/haxe/haxelib /usr/bin/haxelib && \ - ln -s /usr/lib/libneko.so.0 /usr/lib/libneko.so && \ mkdir -p /usr/lib/haxe/lib && \ chmod -R 777 /usr/lib/haxe/lib && \ haxelib setup /usr/lib/haxe/lib && \
