forked from cyllab/CalcUS
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
55 lines (41 loc) · 1.61 KB
/
Dockerfile
File metadata and controls
55 lines (41 loc) · 1.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
FROM python:3.9 AS calcus_user
ARG CALCUS_VERSION_HASH
ENV CALCUS_VERSION_HASH=${CALCUS_VERSION_HASH}
ENV PYTHONUNBUFFERED 1
ENV CALCUS_SCR_HOME "/calcus/scr"
ENV CALCUS_KEY_HOME "/calcus/keys"
ENV CALCUS_TEST_SCR_HOME "/calcus/scratch/scr"
ENV CALCUS_TEST_KEY_HOME "/calcus/scratch/keys"
ENV EBROOTORCA "/binaries/orca"
ENV GAUSS_EXEDIR "/binaries/g16"
ENV XTB4STDAHOME "/binaries/xtb"
ENV XTBPATH "/binaries/xtb/xtb:$XTB4STDAHOME"
ENV STDAHOME "/binaries/xtb"
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:"/binaries/orca"
ENV PATH=$PATH:$XTB4STDAHOME/xtb/bin:$XTB4STDAHOME:$EBROOTORCA:$GAUSS_EXEDIR
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/binaries/orca:/usr/lib/openmpi/
RUN apt update && apt install openbabel sshpass postgresql-client dos2unix openmpi-bin -y
ADD ./requirements.txt /calcus/requirements.txt
RUN pip install -r /calcus/requirements.txt
RUN mkdir -p /binaries/
COPY bin /binaries/xtb
COPY scripts /calcus/scripts
RUN dos2unix /calcus/scripts/*
RUN python /calcus/scripts/extract_xtb.py
COPY calcus /calcus/calcus
COPY static /calcus/static
COPY frontend /calcus/frontend
COPY docker /calcus/docker
COPY manage.py /calcus/manage.py
COPY docker/cluster/config /etc/ssh/ssh_config
WORKDIR /calcus/
RUN ls /calcus/
RUN adduser --disabled-password --gecos '' calcus
FROM calcus_user as calcus_dev
ADD ./test-requirements.txt /calcus/test-requirements.txt
ADD ./cloud_requirements.txt /calcus/cloud_requirements.txt
RUN pip install -r /calcus/test-requirements.txt
RUN pip install -r /calcus/cloud_requirements.txt
RUN mkdir -p /calcus/scratch/keys
RUN mkdir -p /calcus/scratch/scr
RUN chown -R calcus:calcus /calcus/scratch