Dockerfile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. # Welcome to Hue (http://gethue.com) Dockerfile
  2. FROM ubuntu:18.04
  3. LABEL description="Hue SQL Assistant - gethue.com"
  4. RUN apt-get update -y && apt-get install -y \
  5. build-essential \
  6. libkrb5-dev \
  7. libmysqlclient-dev \
  8. libssl-dev \
  9. libsasl2-dev \
  10. libsasl2-modules-gssapi-mit \
  11. libsqlite3-dev \
  12. libtidy-dev \
  13. libxml2-dev \
  14. libxslt-dev \
  15. libffi-dev \
  16. libldap2-dev \
  17. libpq-dev \
  18. python-dev \
  19. python-setuptools \
  20. libgmp3-dev \
  21. libz-dev \
  22. software-properties-common \
  23. curl \
  24. git \
  25. rsync \
  26. sudo \
  27. maven \
  28. gcc \
  29. swig \
  30. # openssl \ # Breaks build
  31. xmlsec1 \
  32. libxmlsec1-openssl \
  33. && rm -rf /var/lib/apt/lists/*
  34. ADD . /hue
  35. WORKDIR /hue
  36. # Not doing a `make prod`, so manually getting production ini
  37. RUN rm desktop/conf/*
  38. COPY desktop/conf.dist desktop/conf
  39. # Need recent version for Ubuntu
  40. RUN curl -sL https://deb.nodesource.com/setup_10.x | sudo bash - \
  41. && apt-get install -y nodejs
  42. RUN PREFIX=/usr/share make install
  43. RUN useradd -ms /bin/bash hue && chown -R hue /usr/share/hue
  44. # Only keep install dir
  45. # Note: get more minimal image by pulling install dir in a stage 2 image
  46. WORKDIR /usr/share/hue
  47. RUN rm -rf /hue \
  48. && rm -rf node_modules
  49. # Install DB connectors
  50. RUN ./build/env/bin/pip install \
  51. psycopg2-binary \
  52. redis==2.10.6 \
  53. django_redis \
  54. flower \
  55. pyhive \
  56. gevent \
  57. threadloop # Needed for Jaeger
  58. COPY tools/docker/hue/conf desktop/conf
  59. COPY tools/docker/hue/startup.sh .
  60. EXPOSE 8888
  61. CMD ["./startup.sh"]