[GitHub] madlib pull request #332: Update Dockerfile to use ubuntu 16.04
Github user kaknikhil commented on a diff in the pull request: https://github.com/apache/madlib/pull/332#discussion_r227919519 --- Diff: tool/docker/base/Dockerfile_ubuntu16_postgres10 --- @@ -0,0 +1,108 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. + +FROM ubuntu:16.04 + +### Get necessary libraries to add postgresql apt repository +RUN apt-get update && apt-get install -y lsb-core software-properties-common wget + +### Add postgresql apt repository +RUN add-apt-repository "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -sc)-pgdg main" && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - + +### Have to update after getting new repository +RUN apt-get update + +### Get postgres10 and postgres specific add-ons +RUN apt-get install -y postgresql-10 \ + postgresql-client-10 \ + postgresql-plpython-10 \ + postgresql-server-dev-10 \ + libpq-dev \ + build-essential \ + openssl \ + libssl-dev \ + libboost-all-dev \ + m4 \ + vim \ + pgxnclient \ + flex \ + bison \ + graphviz + +### Reset pg_hba.conf file to allow no password prompt +### Docker file doesn't support heardoc, like cat > /etc/postgresql/10/main/pg_hba.conf<<-EOF, +### and this echo and \n\ are workaround to write the file +RUN echo " \n\ +# Database administrative login by Unix domain socket \n\ +local all all trust \n\ + +# TYPE DATABASEUSERADDRESS METHOD \n\ + +# "local" is for Unix domain socket connections only \n\ +local all all trust \n\ +# IPv4 local connections: \n\ +hostall all 127.0.0.1/32trust \n\ +# IPv6 local connections: \n\ +hostall all ::1/128 trust \n\ +" > /etc/postgresql/10/main/pg_hba.conf + +### We need to set nproc to unlimited to be able to run scripts as +### the user 'postgres'. This is actually useful when we try to setup +### and start a Postgres server. +RUN echo " * soft nproc unlimited " > /etc/security/limits.d/postgres-limits.conf + + +### Always start postgres server when login +RUN echo "service postgresql start" >> ~/.bashrc + +### Build custom CMake with SSQL support +RUN wget https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz && \ + tar -zxvf cmake-3.6.1.tar.gz && \ + cd cmake-3.6.1 && \ + sed -i 's/-DCMAKE_BOOTSTRAP=1/-DCMAKE_BOOTSTRAP=1 -DCMAKE_USE_OPENSSL=ON/g' bootstrap && \ + ./configure && \ + make -j2 && \ + make install && \ + cd .. + +### Install doxygen-1.8.13: +RUN wget http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.13.src.tar.gz && \ + tar xf doxygen-1.8.13.src.tar.gz && \ + cd doxygen-1.8.13 && \ + mkdir build && \ + cd build && \ + cmake -G "Unix Makefiles" .. && \ + make && \ + make install + +### Optional: install LaTex +### uncomment the following 'RUN apt-get' line to bake LaTex into the image +### Note: if you run the following line, please tag the image as +### madlib/postgres_10:LaTex, and don't tag it as latest +# RUN apt-get install -y texlive-full + +## To build an image from this docker file without LaTex, from madlib folder, run: +## docker build -t madlib/postgres_10:latest -f tool/docker/base/Dockerfile_ubuntu16_postgres10 . +## To push it to docker hub, run: +## docker push madlib/postgres_10:latest + +## To build an image from thi
[GitHub] madlib pull request #332: Update Dockerfile to use ubuntu 16.04
Github user kaknikhil commented on a diff in the pull request: https://github.com/apache/madlib/pull/332#discussion_r227918905 --- Diff: tool/docker/base/Dockerfile_ubuntu16_postgres10 --- @@ -0,0 +1,108 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. + +FROM ubuntu:16.04 + +### Get necessary libraries to add postgresql apt repository +RUN apt-get update && apt-get install -y lsb-core software-properties-common wget + +### Add postgresql apt repository +RUN add-apt-repository "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -sc)-pgdg main" && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - + +### Have to update after getting new repository +RUN apt-get update + +### Get postgres10 and postgres specific add-ons +RUN apt-get install -y postgresql-10 \ + postgresql-client-10 \ + postgresql-plpython-10 \ + postgresql-server-dev-10 \ + libpq-dev \ + build-essential \ + openssl \ + libssl-dev \ + libboost-all-dev \ + m4 \ + vim \ + pgxnclient \ + flex \ + bison \ + graphviz + +### Reset pg_hba.conf file to allow no password prompt +### Docker file doesn't support heardoc, like cat > /etc/postgresql/10/main/pg_hba.conf<<-EOF, +### and this echo and \n\ are workaround to write the file +RUN echo " \n\ +# Database administrative login by Unix domain socket \n\ +local all all trust \n\ + +# TYPE DATABASEUSERADDRESS METHOD \n\ + +# "local" is for Unix domain socket connections only \n\ +local all all trust \n\ +# IPv4 local connections: \n\ +hostall all 127.0.0.1/32trust \n\ +# IPv6 local connections: \n\ +hostall all ::1/128 trust \n\ +" > /etc/postgresql/10/main/pg_hba.conf + +### We need to set nproc to unlimited to be able to run scripts as +### the user 'postgres'. This is actually useful when we try to setup +### and start a Postgres server. +RUN echo " * soft nproc unlimited " > /etc/security/limits.d/postgres-limits.conf + + +### Always start postgres server when login +RUN echo "service postgresql start" >> ~/.bashrc + +### Build custom CMake with SSQL support +RUN wget https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz && \ + tar -zxvf cmake-3.6.1.tar.gz && \ + cd cmake-3.6.1 && \ + sed -i 's/-DCMAKE_BOOTSTRAP=1/-DCMAKE_BOOTSTRAP=1 -DCMAKE_USE_OPENSSL=ON/g' bootstrap && \ + ./configure && \ + make -j2 && \ + make install && \ + cd .. + +### Install doxygen-1.8.13: +RUN wget http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.13.src.tar.gz && \ --- End diff -- we don't need to compile doxygen if we are not going to run `make doc` ---
[GitHub] madlib pull request #332: Update Dockerfile to use ubuntu 16.04
Github user kaknikhil commented on a diff in the pull request: https://github.com/apache/madlib/pull/332#discussion_r227919826 --- Diff: tool/docker/base/Dockerfile_ubuntu16_postgres10 --- @@ -0,0 +1,108 @@ +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. + +FROM ubuntu:16.04 + +### Get necessary libraries to add postgresql apt repository +RUN apt-get update && apt-get install -y lsb-core software-properties-common wget + +### Add postgresql apt repository +RUN add-apt-repository "deb http://apt.postgresql.org/pub/repos/apt/ $(lsb_release -sc)-pgdg main" && wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - + +### Have to update after getting new repository +RUN apt-get update + +### Get postgres10 and postgres specific add-ons +RUN apt-get install -y postgresql-10 \ + postgresql-client-10 \ + postgresql-plpython-10 \ + postgresql-server-dev-10 \ + libpq-dev \ + build-essential \ + openssl \ + libssl-dev \ + libboost-all-dev \ + m4 \ + vim \ + pgxnclient \ + flex \ + bison \ + graphviz + +### Reset pg_hba.conf file to allow no password prompt +### Docker file doesn't support heardoc, like cat > /etc/postgresql/10/main/pg_hba.conf<<-EOF, +### and this echo and \n\ are workaround to write the file +RUN echo " \n\ +# Database administrative login by Unix domain socket \n\ +local all all trust \n\ + +# TYPE DATABASEUSERADDRESS METHOD \n\ + +# "local" is for Unix domain socket connections only \n\ +local all all trust \n\ +# IPv4 local connections: \n\ +hostall all 127.0.0.1/32trust \n\ +# IPv6 local connections: \n\ +hostall all ::1/128 trust \n\ +" > /etc/postgresql/10/main/pg_hba.conf + +### We need to set nproc to unlimited to be able to run scripts as +### the user 'postgres'. This is actually useful when we try to setup +### and start a Postgres server. +RUN echo " * soft nproc unlimited " > /etc/security/limits.d/postgres-limits.conf + + +### Always start postgres server when login +RUN echo "service postgresql start" >> ~/.bashrc + +### Build custom CMake with SSQL support +RUN wget https://cmake.org/files/v3.6/cmake-3.6.1.tar.gz && \ + tar -zxvf cmake-3.6.1.tar.gz && \ + cd cmake-3.6.1 && \ + sed -i 's/-DCMAKE_BOOTSTRAP=1/-DCMAKE_BOOTSTRAP=1 -DCMAKE_USE_OPENSSL=ON/g' bootstrap && \ + ./configure && \ + make -j2 && \ + make install && \ + cd .. + +### Install doxygen-1.8.13: +RUN wget http://ftp.stack.nl/pub/users/dimitri/doxygen-1.8.13.src.tar.gz && \ + tar xf doxygen-1.8.13.src.tar.gz && \ + cd doxygen-1.8.13 && \ + mkdir build && \ + cd build && \ + cmake -G "Unix Makefiles" .. && \ + make && \ + make install + +### Optional: install LaTex +### uncomment the following 'RUN apt-get' line to bake LaTex into the image +### Note: if you run the following line, please tag the image as +### madlib/postgres_10:LaTex, and don't tag it as latest +# RUN apt-get install -y texlive-full --- End diff -- I noticed that we have another image with the tag `LaTex`. Why do we need instructions for installing latex? ---