42 lines
799 B
Docker
42 lines
799 B
Docker
FROM python:latest
|
|
|
|
LABEL Maintainer="Wolfgang Hottgenroth wolfgang.hottgenroth@icloud.com"
|
|
LABEL ImageName="registry.hottis.de/wolutator/modbusservice"
|
|
|
|
ARG APP_DIR="/opt/app"
|
|
ARG CONF_DIR="${APP_DIR}/config"
|
|
|
|
|
|
|
|
RUN \
|
|
apt update && \
|
|
pip3 install loguru && \
|
|
pip3 install dateparser && \
|
|
pip3 install connexion && \
|
|
pip3 install connexion[swagger-ui] && \
|
|
pip3 install uwsgi && \
|
|
pip3 install flask-cors && \
|
|
pip3 install six && \
|
|
pip3 install pymodbus
|
|
|
|
RUN \
|
|
mkdir -p ${APP_DIR} && \
|
|
mkdir -p ${CONF_DIR} && \
|
|
useradd -d ${APP_DIR} -u 1000 user
|
|
|
|
COPY *.py ${APP_DIR}/
|
|
COPY openapi.yaml ${APP_DIR}/
|
|
COPY server.ini ${CONF_DIR}/
|
|
|
|
USER 1000:1000
|
|
WORKDIR ${APP_DIR}
|
|
VOLUME ${CONF_DIR}
|
|
|
|
EXPOSE 5000
|
|
EXPOSE 9191
|
|
|
|
CMD [ "uwsgi", "./config/server.ini" ]
|
|
|
|
|
|
|