ksumit commented on code in PR #367:
URL: https://github.com/apache/incubator-livy/pull/367#discussion_r1042779138


##########
Dockerfile:
##########
@@ -0,0 +1,34 @@
+FROM ubuntu:xenial
+
+# Install necessary dependencies for build/test
+RUN apt update && \
+    apt install -y \
+    apt-transport-https \
+    libkrb5-dev \
+    maven \
+    openjdk-8-jdk \
+    python-dev \
+    python-pip \
+    python3-pip \
+    software-properties-common
+
+# R 3.x install - ensure to add the signing key per 
https://cran.r-project.org/bin/linux/ubuntu/olderreleasesREADME.html
+RUN add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu 
xenial-cran35/' && \
+    apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 
E298A3A825C0D65DFD57CBB651716619E084DAB9 && \
+    apt-get update && \
+    apt-get -y install r-base
+
+# Add build dependencies for python2
+# - First we upgrade pip because that makes a lot of things better
+# - Then we remove the provided version of setuptools and install a different 
version
+# - Then we install additional dependencies
+RUN python -m pip install -U "pip < 21.0"
+RUN apt-get remove -y python-setuptools
+RUN python -m pip install "setuptools < 36"
+RUN python -m pip install "requests >= 2.10.0" "responses >= 0.5.1" 
"futures>=3.0.5" "future>=0.15.2" pytest pytest-runner flaky flake8 
requests-kerberos install codecov cloudpickle
+
+# Now do the same for python3
+RUN python3 -m pip install -U pip
+
+WORKDIR /workspace

Review Comment:
   I was thinking more like binding the workspace path on host to the container 
path. Something like
   ```
   # on host
   LIVY_SRC_DIR=/home/${USER}/workspace/livy
   M2_REPO_DIR=/home/${USER}/.m2/repository
   docker run -v ${LIVY_SRC_DIR}:/workspace/livy \
                    -v ~/.m2/settings.xml:/home/${USER}/.m2/settings.xml \
                    -v ${M2_REPO_DIR}:${M2_REPO_DIR} \
                     livy
   ```
   In the example above, i'm mapping the M2_REPO path from the host as well to 
avoid the cost of downloading all the dependencies again inside the container. 



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to