Dockerfile 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  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. python3-pip \
  6. libkrb5-dev \
  7. libsasl2-modules-gssapi-mit \
  8. libsasl2-dev \
  9. libkrb5-dev \
  10. libxml2-dev \
  11. libxslt-dev \
  12. libmysqlclient-dev \
  13. libldap2-dev \
  14. libsnappy-dev \
  15. python3.6-venv \
  16. rsync \
  17. curl \
  18. sudo \
  19. git && \
  20. rm -rf /var/lib/apt/lists/*
  21. ADD . /hue
  22. RUN pip3 install --upgrade --no-cache-dir setuptools virtualenv pip && \
  23. curl -sL https://deb.nodesource.com/setup_14.x | sudo bash - && \
  24. apt-get install -y nodejs && \
  25. addgroup hue && \
  26. useradd -r -u 1001 -g hue hue && \
  27. chown -R hue /hue && \
  28. mkdir /hue/build && \
  29. chown -R hue /hue/build && \
  30. mkdir /usr/share/hue && \
  31. chown -R hue /usr/share/hue && \
  32. rm -r /hue/desktop/conf/* && \
  33. cp -r /hue/desktop/conf.dist/* /hue/desktop/conf/ && \
  34. cd /hue && \
  35. PREFIX=/usr/share PYTHON_VER=python3.6 make install && \
  36. chown -R hue /usr/share/hue && \
  37. npm cache clean --force && \
  38. pip3 cache purge && \
  39. rm -rf /var/lib/apt/lists/* && \
  40. cp -r /hue/tools/docker/hue/conf3/* /usr/share/hue/desktop/conf/ && \
  41. cp /hue/tools/docker/hue/startup.sh /usr/share/hue/startup.sh && \
  42. rm -rf /hue && \
  43. rm -rf /usr/share/hue/node_modules
  44. WORKDIR /usr/share/hue
  45. # Install DB connectors
  46. # To move to requirements_connectors.txt
  47. RUN ./build/env/bin/pip install --no-cache-dir \
  48. psycopg2-binary \
  49. # Avoid Django 3 pulling
  50. django_redis==4.11.0 \
  51. flower \
  52. # SparkSql show tables
  53. git+https://github.com/gethue/PyHive \
  54. # pyhive \
  55. #ksql \
  56. git+https://github.com/bryanyang0528/ksql-python \
  57. pydruid \
  58. pybigquery \
  59. elasticsearch-dbapi \
  60. pyasn1==0.4.1 \
  61. # View some parquet files
  62. python-snappy==0.5.4 \
  63. # Needed for Jaeger
  64. threadloop \
  65. # Fix Can't load plugin: sqlalchemy.dialects:clickhouse
  66. sqlalchemy-clickhouse \
  67. # sqlalchemy-clickhouse depend on infi.clickhouse_orm
  68. # install after sqlalchemy-clickhouse and version == 1.0.4
  69. # otherwise Code: 516, Authentication failed will display
  70. infi.clickhouse_orm==1.0.4
  71. USER hue
  72. EXPOSE 8888
  73. CMD ["./startup.sh"]