Dockerfile 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. # Welcome to Hue (http://gethue.com) Dockerfile
  2. # Build an image from a remote github or local cloned Hue repository.
  3. FROM ubuntu:16.04
  4. LABEL description="Hue Project https://github.com/cloudera/hue"
  5. RUN apt-get update -y && apt-get install -y \
  6. build-essential \
  7. libkrb5-dev \
  8. libmysqlclient-dev \
  9. libssl-dev \
  10. libsasl2-dev \
  11. libsasl2-modules-gssapi-mit \
  12. libsqlite3-dev \
  13. libtidy-0.99-0 \
  14. libxml2-dev \
  15. libxslt-dev \
  16. libffi-dev \
  17. libldap2-dev \
  18. libpq-dev \
  19. python-dev \
  20. python-setuptools \
  21. libgmp3-dev \
  22. libz-dev \
  23. software-properties-common \
  24. curl \
  25. git \
  26. sudo \
  27. maven \
  28. && rm -rf /var/lib/apt/lists/*
  29. RUN add-apt-repository -y ppa:webupd8team/java
  30. RUN apt-get update -y
  31. RUN echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | sudo /usr/bin/debconf-set-selections
  32. RUN apt-get install -y oracle-java8-installer
  33. ADD . /hue
  34. WORKDIR /hue
  35. # Not doing a `make prod` equivalent, so manually getting production ini
  36. RUN rm desktop/conf/*
  37. COPY desktop/conf.dist desktop/conf
  38. # Need recent version for Ubuntu
  39. RUN curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
  40. RUN apt-get install -y nodejs
  41. RUN PREFIX=/usr/share make install
  42. RUN useradd -ms /bin/bash hue && chown -R hue /usr/share/hue
  43. WORKDIR /usr/share/hue
  44. RUN ./build/env/bin/pip install psycopg2-binary
  45. COPY tools/docker/hue/conf desktop/conf
  46. COPY tools/docker/hue/startup.sh .
  47. # Webpack not integrated into make install
  48. COPY package.json .
  49. COPY webpack.config.js .
  50. RUN npm install
  51. RUN npm run webpack
  52. RUN ./build/env/bin/hue collectstatic --noinput
  53. EXPOSE 8888
  54. CMD ["./startup.sh"]