Dockerfile 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. FROM ubuntu:20.04
  2. ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
  3. ENV PATH /opt/conda/bin:$PATH
  4. RUN apt-get update --fix-missing && \
  5. apt-get install -y make wget bzip2 ca-certificates curl git && \
  6. apt-get clean && \
  7. rm -rf /var/lib/apt/lists/*
  8. COPY requirements.yml requirements.yml
  9. RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-4.5.11-Linux-x86_64.sh -O ~/miniconda.sh && \
  10. /bin/bash ~/miniconda.sh -b -p /opt/conda && \
  11. rm ~/miniconda.sh && \
  12. /opt/conda/bin/conda clean -tipsy && \
  13. ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \
  14. echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc && \
  15. echo "conda activate elyra-env" >> ~/.bashrc && \
  16. /opt/conda/bin/conda env create --file requirements.yml
  17. # update nodejs
  18. RUN curl -fsSL https://deb.nodesource.com/setup_16.x | bash - && \
  19. apt-get install -y nodejs
  20. # install yarn
  21. RUN curl -sL https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | tee /usr/share/keyrings/yarnkey.gpg >/dev/null && \
  22. echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg] https://dl.yarnpkg.com/debian stable main" | tee /etc/apt/sources.list.d/yarn.list && \
  23. apt-get update && apt-get install yarn
  24. ENV TINI_VERSION v0.16.1
  25. ADD https://github.com/krallin/tini/releases/download/${TINI_VERSION}/tini /usr/bin/tini
  26. RUN chmod +x /usr/bin/tini
  27. RUN mkdir -p /dev/elyra
  28. ENTRYPOINT [ "/usr/bin/tini", "--" ]
  29. CMD [ "/bin/bash" ]