# 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 -R 755 /srv # Install dependencies RUN apt-get update && \ apt-get install -y wget ffmpeg curl aria2 RUN apt-get install -y \ fonts-liberation \ libatk-bridge2.0-0 \ libatk1.0-0 \ libatspi2.0-0 \ libcups2 \ libdrm2 \ libgbm1 \ libgtk-3-0 \ libnspr4 \ libnss3 \ libu2f-udev \ libvulkan1 \ libxcomposite1 \ libxdamage1 \ mesa-vulkan-drivers\ libxfixes3 \ libasound2 \ libxkbcommon0 \ libxrandr2 \ xdg-utils # Download youtubeuploader ADD https://github.com/porjo/youtubeuploader/releases/download/23.06/youtubeuploader_23.06_Linux_x86_64.tar.gz youtubeuploader.tar.gz # Create youtube directory and extract youtubeuploader there RUN mkdir -p /srv/youtube && \ tar -zxvf youtubeuploader.tar.gz -C /srv/youtube && \ rm youtubeuploader.tar.gz && \ chmod +x /srv/youtube/youtubeuploader # Copy the application code COPY --chown=admin . /srv # Download and install Thorium Browser RUN apt-get update && apt-get install -y \ software-properties-common \ npm RUN npm install npm@latest -g && \ npm install n -g && \ n latest #install the stuff # RUN cd /srv/Remotion-app && npm install # Install Python dependencies COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt #install unsilence RUN pipx ensurepath RUN pipx install unsilence # Command to run the application CMD python -m uvicorn App.app:app --host 0.0.0.0 --port 7860 & python -m celery -A App.Worker.celery worker -c 5 --max-tasks-per-child=1 --without-heartbeat # CMD python -m uvicorn App.app:app --host 0.0.0.0 --port 7860 --workers 2 EXPOSE 7860