docker-scripts/linux/discontinued/freegpt-webui/1.4/Dockerfile

73 lines
2.7 KiB
Docker
Raw Normal View History

2023-07-01 17:28:06 +03:00
##################################################################
##################################################################
##################################################################
# Build stage
##################################################################
##################################################################
##################################################################
2023-07-01 17:17:15 +03:00
FROM epicmorg/python:3.10-develop AS build
2023-07-04 19:20:10 +03:00
ARG FREEGPT_VERSION=1.4
2023-07-01 17:57:40 +03:00
2023-07-01 17:28:06 +03:00
ENV FREEGPT_PATH=/app
ENV FREEGPT_PORT=1338
ENV FREEGPT_ENDPOINT_PORT=1337
2023-07-01 17:17:15 +03:00
2023-07-01 17:57:40 +03:00
RUN git clone --depth 1 --branch ${FREEGPT_VERSION} https://github.com/Em1tSan/freegpt-webui-ru.git ${FREEGPT_PATH} && \
2023-07-01 17:28:06 +03:00
rm -rfv ${FREEGPT_PATH}/.git
2023-07-01 17:17:15 +03:00
RUN apt-get update && \
2023-07-01 17:28:06 +03:00
apt-get install -y --no-install-recommends \
build-essential \
libffi-dev cmake \
libcurl4-openssl-dev && \
pip3 install --user --no-cache-dir -r ${FREEGPT_PATH}/requirements-docker.txt
RUN find ${FREEGPT_PATH} -type f -exec dos2unix -k -s -o {} ';'
2023-07-01 17:28:06 +03:00
##################################################################
##################################################################
##################################################################
# Production stage
##################################################################
##################################################################
##################################################################
2023-07-01 17:17:15 +03:00
FROM epicmorg/python:3.10 AS production
2023-07-01 17:28:06 +03:00
ENV FREEGPT_PATH=/app
ENV FREEGPT_PORT=1338
ENV FREEGPT_ENDPOINT_PORT=1337
RUN mkdir -p ${FREEGPT_PATH}
##################################################################
# Setup supervisord
##################################################################
RUN apt-get update && \
apt-get install -y \
supervisor
2023-07-01 17:28:06 +03:00
2023-07-05 18:05:19 +03:00
COPY etc/supervisor/conf.d/freegpt.conf /etc/supervisor/conf.d/freegpt.conf
2023-07-01 17:28:06 +03:00
##################################################################
# Copy bins
##################################################################
COPY --from=build /root/.local /usr/local
COPY --from=build /app ${FREEGPT_PATH}
2023-07-01 17:17:15 +03:00
2023-07-01 17:28:06 +03:00
##################################################################
# cleaninig up
##################################################################
RUN apt clean -y && \
apt-get clean all && \
apt autoclean -y && \
rm -rfv /var/lib/apt/lists/* && \
2024-12-11 12:01:03 +03:00
rm -rfv /var/cache/apt/archives/*.deb && \
2024-12-10 01:08:00 +03:00
rm -rfv /root/tmp/* && \
2023-07-01 17:28:06 +03:00
rm -rfv /tmp/*
WORKDIR ${FREEGPT_PATH}
EXPOSE ${FREEGPT_PORT} ${FREEGPT_ENDPOINT_PORT}
2023-07-01 17:17:15 +03:00
CMD ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/conf.d/freegpt.conf"]