Refine Dockerfile for payment isolation

This commit is contained in:
dongli 2024-12-26 11:05:05 -08:00
parent 1888ebb433
commit 763935569d

View File

@ -1,26 +1,27 @@
FROM python:3.10-slim-buster FROM python:3.10-slim-buster
# docker settings # docker settings
ARG CONTAINER_APP_ROOT= ARG CONTAINER_APP_ROOT=/app
ENV APP_NAME= ENV APP_NAME=payment
ENV JWT_SECRET_KEY="" ENV JWT_SECRET_KEY="8f87ca8c3c9c3df09a9c78e0adb0927855568f6072d9efc892534aee35f5867b"
ENV JWT_ALGORITHM="HS256"
#site_settings #site_settings
ENV SERVICE_API_ACCESS_HOST=0.0.0.0 ENV SERVICE_API_ACCESS_HOST=0.0.0.0
ENV SERVICE_API_ACCESS_PORT=8006 ENV SERVICE_API_ACCESS_PORT=8006
ENV STRIPE_API_KEY= ENV STRIPE_API_KEY=sk_test_51Ogsw5B0IyqaSJBrwczlr820jnmvA1qQQGoLZ2XxOsIzikpmXo4pRLjw4XVMTEBR8DdVTYySiAv1XX53Zv5xqynF00GfMqttFd
ENV STRIPE_WEBHOOK_SECRET= ENV STRIPE_WEBHOOK_SECRET=""
ENV MONGODB_NAME= ENV MONGODB_NAME=freeleaps2
ENV MONGODB_PORT= ENV MONGODB_PORT=27017
ENV MONGODB_URI= ENV MONGODB_URI="mongodb://localhost:27017/"
#log_settings #log_settings
ENV LOG_BASE_PATH= ENV LOG_BASE_PATH=$CONTAINER_APP_ROOT/log/$APP_NAME
ENV BACKEND_LOG_FILE_NAME= ENV BACKEND_LOG_FILE_NAME=$APP_NAME
ENV APPLICATION_ACTIVITY_LOG= ENV APPLICATION_ACTIVITY_LOG=$APP_NAME-activity
WORKDIR ${CONTAINER_APP_ROOT} WORKDIR ${CONTAINER_APP_ROOT}
@ -31,9 +32,20 @@ RUN pip install --no-cache-dir -r requirements.txt
COPY . ${CONTAINER_APP_ROOT} COPY . ${CONTAINER_APP_ROOT}
RUN apt update #RUN apt update
RUN apt install -y netcat #RUN apt install -y netcat
RUN ln -s /bin/bash /usr/bin/bash #RUN ln -s /bin/bash /usr/bin/bash
# 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} EXPOSE ${SERVICE_API_ACCESS_PORT}
CMD ["uvicorn", "webapi.main:app", "--reload", "--port=${SERVICE_API_ACCESS_PORT}", "--host=${SERVICE_API_ACCESS_HOST}"] CMD ["uvicorn", "webapi.main:app", "--reload", "--port=${SERVICE_API_ACCESS_PORT}", "--host=${SERVICE_API_ACCESS_HOST}"]