Back to home page

EIC code displayed by LXR

 
 

    


Warning, /edpm/docker/eicrecon-ubuntu22-prereq/Dockerfile is written in an unsupported language. File is not indexed.

0001 #
0002 # docker build -t eicdev/eicrecon-ubuntu22-prereq:latest .  
0003 # docker build -t eicdev/eicrecon-ubuntu22-prereq:latest --build-arg BUILD_THREADS=24 .
0004 # docker push eicdev/eicrecon-ubuntu22-prereq:latest
0005 # 
0006 # docker run --rm -it --init eicdev/eicrecon-ubuntu22-prereq:latest
0007 # docker run --rm -it --init -p8888:8888 eicdev/eicrecon-ubuntu22-prereq:latest
0008 
0009 FROM ubuntu:latest
0010 
0011 # Number of build threads
0012 ARG BUILD_THREADS=8
0013 
0014 ENV EIC_ROOT /eic
0015 ENV CONTAINER_ROOT /container
0016 ENV APP_ROOT /container/app
0017 
0018 SHELL ["/bin/bash", "-c"]
0019 
0020 ARG DEBIAN_FRONTEND=noninteractive
0021 
0022 RUN apt-get update &&\
0023     apt-get install -y python3-pip python3-dev sudo git cmake apt-utils &&\
0024     apt-get install -y dialog apt-utils&&\
0025     apt-get install -y tzdata &&\
0026     apt-get install -y libmsgsl-dev libftgl-dev libxml2-dev libldap2-dev libgsl0-dev libfftw3-dev libmysqlclient-dev libavahi-compat-libdnssd-dev libssl-dev python3-dev libcfitsio-dev xlibmesa-glu-dev libkrb5-dev gfortran graphviz-dev libpcre3-dev libglew-dev libxmu-dev libexpat-dev python3-jinja2 libtbb-dev libxerces-c-dev cmake libboost-filesystem-dev dpkg-dev libspdlog-dev libxext-dev qtbase5-dev libqt5opengl5-dev libx11-dev libboost-test-dev libocct-draw-dev libeigen3-dev libocct-data-exchange-dev python3-dev libocct-foundation-dev libfmt-dev libxft-dev libboost-program-options-dev libboost-dev binutils libxpm-dev curl libxerces-c3-dev occt-misc python3-yaml &&\
0027     rm -rf /var/lib/apt/lists/* &&\
0028     python3 -m pip install --upgrade pip 
0029     
0030 
0031 RUN useradd -m -G sudo eicuser
0032 RUN echo "eicuser ALL=(ALL) NOPASSWD:ALL">>/etc/sudoers
0033 
0034 RUN install -d -o eicuser -g eicuser ${CONTAINER_ROOT} && \
0035     install -d -o eicuser -g eicuser ${APP_ROOT} && \
0036     install -d -o eicuser -g eicuser /eic
0037 
0038 USER eicuser
0039 WORKDIR /home/eicuser
0040 ENV PATH "$PATH:/home/eicuser/.local/bin"
0041 
0042 ENV LC_ALL=C.UTF-8
0043 ENV LANG=C.UTF-8
0044 
0045 
0046 RUN python3 -m pip install --user --upgrade --force-reinstall  click &&\
0047     python3 -m pip install --user --upgrade --force-reinstall  appdirs &&\
0048     python3 -m pip install --user --upgrade --force-reinstall  edpm &&\
0049     edpm --top-dir=/container/app &&\
0050     edpm
0051 
0052 
0053 # THIS IS NOT WORKING! HuCK debconf
0054 # # https://github.com/moby/moby/issues/27988
0055 # 
0056 # # install all packets but not eicrecon
0057 # RUN  sudo apt-get update &&\
0058 #      echo $(edpm req --all ubuntu) &&\     
0059 #      sudo echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections &&\
0060 #      sudo chmod 777 /var/cache/debconf/ &&\
0061 #      sudo chmod 777 /var/cache/debconf/passwords.dat &&\
0062 #      sudo apt-get -y -q install $(edpm req --all ubuntu) &&\
0063 #      sudo rm -rf /var/lib/apt/lists/*
0064 # (!) Build with C++20
0065 # eicrecon stack
0066 RUN edpm config global cxx_standard=17 &&\
0067     edpm install clhep && edpm clean clhep &&\
0068     edpm install eigen3 && edpm clean eigen3
0069 
0070 RUN edpm config root branch="v6-28-00" &&\
0071     edpm config root cmake_custom_flags="-Droofit=OFF" &&\
0072     edpm install -j${BUILD_THREADS} root && edpm clean root &&\
0073     edpm install hepmc3 && edpm clean hepmc3 &&\
0074     edpm install -j${BUILD_THREADS} geant4 && edpm clean geant4
0075 
0076 
0077 # aa
0078 RUN python3 -m pip install --user --upgrade --force-reinstall  edpm &&\
0079     edpm install eicrecon --deps-only 
0080 
0081 # jupyterab
0082 RUN python3 -m pip install jupyterlab
0083 
0084 ADD test_jsroot.ipynb /home/eicuser/
0085 
0086 RUN echo "done"
0087 
0088 CMD jupyter lab --ip=0.0.0.0 --no-browser \
0089     --NotebookApp.custom_display_url=http://127.0.0.1:8888 \
0090     --NotebookApp.token=''