FROM python:3.10-bullseye
LABEL maintainer="tphung001@dundee.ac.uk"

ARG BUILD_DATE
LABEL build-date=$BUILD_DATE
ARG NETPHOS
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
ENV CACTUS docker
WORKDIR /app
RUN apt-get -y update
RUN apt-get -y upgrade
RUN apt-get -y install git
RUN apt-get -y install nginx
RUN apt-get -y install tcsh
RUN apt-get -y install gawk
RUN git clone https://github.com/noatgnu/cactus.git temp
RUN mkdir /app/netphos
RUN if [ "$NETPHOS" = "1"]; then \
    cd /app/netphos && \
    uncompress /app/netphos/netphos-3.1.Linux.tar.Z && \
    tar -xvf /app/netphos/netphos-3.1.Linux.tar && \
    yes | cp -rf /app/cactus/ape.docker /app/netphos/ape-1.0/ape; \
    fi
RUN cp -R /app/temp /app/cactus
WORKDIR /app/cactus
RUN mkdir /app/cactus/db
RUN mkdir files
RUN mkdir /app/nginx
RUN touch /app/nginx/error.log
RUN touch /app/nginx/access.log
RUN cp nginx.docker.conf /etc/nginx/nginx.conf
RUN pip3 install -r requirements.txt
RUN alembic downgrade base
RUN alembic upgrade head
RUN apt-get -y install supervisor
RUN service supervisor stop
EXPOSE 8000
EXPOSE 8001
CMD ["bash", "/app/cactus/start.sh"]


