# Welcome to Hue (http://gethue.com) Dockerfile FROM ubuntu:18.04 LABEL description="Hue SQL Assistant - gethue.com" ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update -y && apt-get install -y \ build-essential \ libkrb5-dev \ libmysqlclient-dev \ libssl-dev \ libsasl2-dev \ libsasl2-modules-gssapi-mit \ libsqlite3-dev \ libtidy-dev \ libxml2-dev \ libxslt-dev \ libffi-dev \ libldap2-dev \ libpq-dev \ libsnappy-dev \ python-dev \ python-setuptools \ libgmp3-dev \ libz-dev \ software-properties-common \ curl \ git \ rsync \ sudo \ maven \ gcc \ swig \ # openssl \ # Breaks build xmlsec1 \ libxmlsec1-openssl \ krb5-config \ krb5-user \ && rm -rf /var/lib/apt/lists/* ADD . /hue WORKDIR /hue # Not doing a `make prod`, so manually getting production ini RUN rm desktop/conf/* COPY desktop/conf.dist desktop/conf # Need recent version for Ubuntu # Upgrading to node-v16 because of the following CVE's in node-v14 "CVE-2021-3450, CVE-2021-44531, CVE-2023-32004, CVE-2023-32006" # Node-v20-LTS is not supported by old OS'es - Redhat7_ppc, Centos7, Ubuntu18, Sles12. So upgrading to node-v16 RUN curl -sL https://deb.nodesource.com/setup_16.x | sudo bash - \ && apt-get install -y nodejs RUN PREFIX=/usr/share make install RUN useradd -ms /bin/bash hue && chown -R hue /usr/share/hue # Only keep install dir # Note: get more minimal image by pulling install dir in a stage 2 image WORKDIR /usr/share/hue RUN rm -rf /hue \ && rm -rf node_modules # Install DB connectors RUN ./build/env/bin/pip install \ psycopg2-binary \ redis==2.10.6 \ django_redis \ flower==0.9.7 \ # SparkSql show tables git+https://github.com/gethue/PyHive \ # pyhive \ ksql \ pydruid \ pybigquery \ pyasn1==0.4.1 \ # View some parquet files python-snappy==0.5.4 \ gevent \ # Needed for Jaeger threadloop \ thrift-sasl==0.2.1 COPY tools/docker/hue/conf desktop/conf COPY tools/docker/hue/startup.sh . EXPOSE 8888 CMD ["./startup.sh"]