You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
43 lines
986 B
43 lines
986 B
FROM ubuntu:latest |
|
|
|
# update to the latest packages |
|
ENV DEBIAN_FRONTEND="noninteractive" |
|
RUN apt-get update && apt-get upgrade -y |
|
|
|
# add user that will be used to install and run the application |
|
RUN groupadd -g 1000 deploy |
|
RUN useradd -m -u 1000 -g deploy deploy |
|
|
|
# install required packages for debugging |
|
# RUN apt-get install -y vim curl lsof |
|
|
|
|
|
# |
|
# CUSTOM PART IS BELOW HERE |
|
# |
|
|
|
|
|
# install required packages |
|
RUN apt-get install -y python3 python3-pip |
|
|
|
# switch to the created user and install the application |
|
USER deploy |
|
ENV PATH "$PATH:/home/deploy/.local/bin" |
|
|
|
COPY . /app |
|
WORKDIR /app |
|
|
|
RUN pip install --upgrade pip |
|
RUN pip install gunicorn |
|
RUN pip install wheel |
|
|
|
RUN pip install -r requirements.txt |
|
RUN flit install --pth-file |
|
|
|
# switch back to root to remove header files |
|
#USER root |
|
#RUN apk del libc-dev libffi-dev openssl-dev python3-dev |
|
|
|
# switch to the created user to run the application |
|
#USER deploy |
|
CMD ["gunicorn", "--paster", "/app/production.ini", "-b", "0.0.0.0:8000"]
|
|
|