freeleaps-service-hub/apps/authentication/Dockerfile

49 lines
1.4 KiB
Docker

FROM python:3.10-slim-bullseye
# docker settings
ARG CONTAINER_APP_ROOT="/app"
ENV APP_NAME="authentication"
ENV DEVSVC_WEBAPI_URL_BASE="http://devsvc:8007/api/devsvc"
ENV NOTIFICATION_WEBAPI_URL_BASE="http://notification:8003/api/notification/"
ENV JWT_SECRET_KEY="8f87ca8c3c9c3df09a9c78e0adb0927855568f6072d9efc892534aee35f5867b"
ENV JWT_ALGORITHM="HS256"
#site_settings
ENV SERVICE_API_ACCESS_HOST=0.0.0.0
ENV SERVICE_API_ACCESS_PORT=8004
ENV MONGODB_NAME=freeleaps2
ENV MONGODB_PORT=27017
ENV MONGODB_URI="mongodb://localhost:27017/"
#log_settings
ENV LOG_BASE_PATH=$CONTAINER_APP_ROOT/log/$APP_NAME
ENV BACKEND_LOG_FILE_NAME=$APP_NAME
ENV APPLICATION_ACTIVITY_LOG=$APP_NAME-activity
WORKDIR ${CONTAINER_APP_ROOT}
COPY requirements.txt .
RUN pip install --upgrade pip
RUN pip install --no-cache-dir -r requirements.txt
COPY . ${CONTAINER_APP_ROOT}
# Install tools and keyring updates
RUN apt-get update && apt-get install -y --no-install-recommends \
gnupg wget && \
apt-get install -y debian-keyring debian-archive-keyring && \
rm -rf /var/lib/apt/lists/*
# Install additional tools and create symbolic links
RUN apt-get update && apt-get install -y netcat && \
ln -s /bin/bash /usr/bin/bash && \
rm -rf /var/lib/apt/lists/*
EXPOSE ${SERVICE_API_ACCESS_PORT}
CMD ["uvicorn", "webapi.main:app", "--reload", "--port=${SERVICE_API_ACCESS_PORT}", "--host=${SERVICE_API_ACCESS_HOST}"]