Embedding / Dockerfile
Yakova's picture
Update Dockerfile
7a7ed9d verified
# Builder stage
FROM python:3.10.0 as builder
RUN useradd -ms /bin/bash admin
WORKDIR /srv
RUN chown -R admin:admin /srv
RUN chmod 755 /srv
RUN apt-get update && \
apt-get install -y --no-install-recommends \
aria2 ffmpeg libgl1-mesa-dev \
libgles2-mesa-dev \
libglu1-mesa-dev \
build-essential \
cmake \
freeglut3-dev \
libglfw3-dev \
libglew-dev \
libsdl2-dev \
libjpeg-dev \
libpng-dev \
libfreetype6-dev \
&& rm -rf /var/lib/apt/lists/*
#copy requirements
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
RUN apt-get update && apt-get install -y \
tesseract-ocr \
libtesseract-dev
RUN pip install pytesseract
# Copy the application code
USER admin
COPY --chown=admin . /srv
USER root
RUN chown -R admin:admin /srv
# Install youtubeuploader
ADD https://github.com/porjo/youtubeuploader/releases/download/v1.24.4/youtubeuploader_1.24.4_Linux_amd64.tar.gz youtubeuploader.tar.gz
RUN mkdir -p /srv/youtube && \
tar -zxvf youtubeuploader.tar.gz -C /srv/youtube && \
rm youtubeuploader.tar.gz && \
chmod +x /srv/youtube/youtubeuploader
# Command to run the application
CMD uvicorn App.app:app --host 0.0.0.0 --port 7860 --workers 1
# Expose the server port
EXPOSE 7860