|
ARG MODEL_NAME |
|
ARG MODEL_PARAMS |
|
ARG MODEL_PROMPT_TEMPLATE |
|
ARG APP_COLOR |
|
ARG APP_NAME |
|
|
|
FROM ghcr.io/huggingface/text-generation-inference:latest |
|
|
|
ARG MODEL_NAME |
|
ARG MODEL_PARAMS |
|
ARG MODEL_PROMPT_TEMPLATE |
|
ARG APP_COLOR |
|
ARG APP_NAME |
|
|
|
ENV TZ=Europe/Paris \ |
|
PORT=3000 |
|
|
|
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ |
|
gnupg \ |
|
curl \ |
|
gettext && \ |
|
rm -rf /var/lib/apt/lists/* |
|
COPY entrypoint.sh.template entrypoint.sh.template |
|
|
|
RUN mkdir defaults |
|
ADD defaults /defaults |
|
RUN chmod -R 777 /defaults |
|
|
|
RUN MODEL_NAME="${MODEL_NAME:="$(cat /defaults/MODEL_NAME)"}" && export MODEL_NAME \ |
|
&& MODEL_PARAMS="${MODEL_PARAMS:="$(cat /defaults/MODEL_PARAMS)"}" && export MODEL_PARAMS \ |
|
&& MODEL_PROMPT_TEMPLATE="${MODEL_PROMPT_TEMPLATE:="$(cat /defaults/MODEL_PROMPT_TEMPLATE)"}" && export MODEL_PROMPT_TEMPLATE && \ |
|
envsubst < "entrypoint.sh.template" > "entrypoint.sh" \ |
|
&& rm entrypoint.sh.template |
|
|
|
|
|
|
|
RUN mkdir -p /data/db |
|
RUN chown -R 1000:1000 /data |
|
|
|
RUN useradd -m -u 1000 user |
|
|
|
|
|
USER user |
|
|
|
ENV HOME=/home/user \ |
|
PATH=/home/user/.local/bin:$PATH |
|
|
|
COPY requirements.txt requirements.txt |
|
COPY main.py main.py |
|
|
|
RUN pip install -r requirements.txt |
|
|
|
ENTRYPOINT ["/bin/bash"] |
|
CMD ["entrypoint.sh"] |
|
|
|
|
|
|