Something went wrong on our end
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Dockerfile_template 1.58 KiB
# syntax=docker/dockerfile:1
FROM ubuntu:18.04 as base_image
#run mkdir as root
RUN mkdir -p /storage/app/EWS_prod/regions/EastAfrica/workspace
RUN mkdir -p /storage/app/EWS_prod/regions/SouthAsia/workspace
#create dirs
WORKDIR /home
#RUN mkdir /home/ewsmanager/code
#copy resources in
COPY ./conda-env-py3EWS-withbuilds.yml .
#install system packages
RUN apt-get update;apt-get install --assume-yes wget unzip emacs gdal-bin libgdal-dev build-essential gfortran zlib1g zlib1g-dev libbz2-dev apt-utils liblzma-dev libpcre++-dev libcurl4-openssl-dev default-jre lib32readline7 lib32readline6-dev openssh-server libfribidi-dev libfontconfig1-dev git;
RUN echo "alias e='emacs -nw $1'" >> ~/.bashrc;
#sets the timezone to London
RUN DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata
# Install miniconda
ENV CONDA_DIR /storage/app/miniconda3
RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda.sh \
&& /bin/bash ~/miniconda.sh -b -p $CONDA_DIR \
&& rm -v ~/miniconda.sh;
# Put conda in path so we can use conda activate
ENV PATH=$CONDA_DIR/bin:$PATH
#build the conda env(s)
RUN conda env create --file conda-env-py3EWS-withbuilds.yml --prefix /storage/app/EWS_prod/envs/conda/py3EWS
#tidy
RUN rm -v conda-env-py3EWS-withbuilds.yml;
#these usernames and ids match the production server (IaaS), override when building a local image if needed
ARG GNAME=ews
ARG UNAME=ewsmanager
ARG UID=1006
ARG GID=1008
RUN groupadd -g $GID $GNAME
RUN useradd -m -u $UID -g $GID -o -s /bin/bash $UNAME
USER $UNAME
RUN echo $PYTHONPATH
WORKDIR /home/ewsmanager