FROM nikolaik/python-nodejs:python3.9-nodejs18-bullseye # prepare cache USER root RUN mkdir -p /.cache && \ chown 1000:1000 /.cache && \ chmod 777 /.cache # user "pn" is created by nikolaik/python-nodejs USER pn ENV HOME=/home/pn \ PATH=/home/pn/.local/bin:$PATH \ TRANSFORMERS_CACHE=/.cache WORKDIR $HOME/app # install requirements.txt COPY --chown=pn ./requirements.txt $HOME/app/requirements.txt RUN pip install --no-cache-dir --upgrade -r $HOME/app/requirements.txt # cache the model COPY --chown=pn ./setup.py $HOME/app/setup.py RUN python setup.py && ls -la /.cache COPY --chown=pn . $HOME/app # build frontend WORKDIR $HOME/app/frontend RUN npm i && npm run build WORKDIR $HOME/app EXPOSE 7860 CMD ["/bin/bash", "-c", "TRANSFORMERS_OFFLINE=1 python app.py"]