FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive # ── System dependencies ────────────────────────────────────────────────────── RUN apt-get update && apt-get install -y \ curl wget git \ nginx supervisor \ build-essential \ sqlite3 \ python3 python3-pip \ && rm -rf /var/lib/apt/lists/* # ── Hugging Face Hub Python lib ─────────────────────────────────────────────── RUN pip3 install huggingface_hub # ── Node.js 20 ─────────────────────────────────────────────────────────────── RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \ && apt-get install -y nodejs \ && rm -rf /var/lib/apt/lists/* # ── Vane ───────────────────────────────────────────────────────────────────── WORKDIR /app RUN git clone https://github.com/ItzCrazyKns/Perplexica.git COPY config.toml ./config.toml RUN npm install RUN npm run build # ── Nginx ───────────────────────────────────────────────────────────────────── RUN rm -f /etc/nginx/sites-enabled/default COPY nginx.conf /etc/nginx/conf.d/perplexica.conf # ── Supervisor ──────────────────────────────────────────────────────────────── RUN mkdir -p /var/log/supervisor COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf # ── Startup script ──────────────────────────────────────────────────────────── COPY start.sh /start.sh RUN chmod +x /start.sh EXPOSE 7860 CMD ["/start.sh"]