FROM python:3 LABEL Name=url_shorter EXPOSE 5000 #Copy files to work directory WORKDIR /app ADD ./static /app/static ADD ./templates /app/templates COPY import.py /app/import.py COPY export.py /app/export.py COPY main.py /app/main.py COPY VERSION /app/VERISON #Make a complete system update RUN apt update RUN apt install apt-utils -y RUN apt upgrade -y #Install pipreqs. This tool is used to make the requirements.txt file automatic. Afterwards install them. RUN pip install pipreqs RUN pipreqs . --force RUN python3 -m pip install -r requirements.txt #Compile the Python files (for more speed) and replace the original files RUN python -m compileall . RUN rm main.py import.py export.py RUN mv __pycache__/main.* main.py RUN mv __pycache__/import.* import.py RUN mv __pycache__/export.* export.py #Make a builddate file, used if you want to see the builddate in the webui RUN date > builddate.txt #everytime the container starts run main.py ENTRYPOINT python3 main.py