Spaces:
Sleeping
Sleeping
File size: 1,912 Bytes
b53f3f5 4065739 c9ae44c 3774c91 447c1f2 3774c91 b53f3f5 3774c91 b53f3f5 3774c91 b53f3f5 4065739 b53f3f5 4065739 3170830 b53f3f5 3170830 b53f3f5 3170830 4065739 3170830 4065739 bab0968 bda0661 bab0968 bda0661 bab0968 3170830 b53f3f5 3170830 3774c91 473d7b7 3774c91 b53f3f5 3170830 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 | FROM php:8.4-cli
ENV APP_ENV=production \
APP_DEBUG=false \
APP_URL=http://localhost \
LOG_CHANNEL=stderr \
LOG_LEVEL=debug \
SESSION_DRIVER=file \
CACHE_STORE=file \
QUEUE_CONNECTION=sync \
DB_CONNECTION=sqlite \
PORT=7860
RUN apt-get update && apt-get install -y \
git unzip curl zip ca-certificates gnupg \
libzip-dev \
libpng-dev \
libjpeg-dev \
libfreetype6-dev \
libonig-dev \
libxml2-dev \
libsqlite3-dev \
&& docker-php-ext-install \
zip \
pdo \
pdo_mysql \
pdo_sqlite \
mbstring \
exif \
pcntl \
bcmath \
gd \
&& curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
&& apt-get install -y nodejs \
&& rm -rf /var/lib/apt/lists/*
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
RUN useradd -m -u 1000 user
ENV HOME=/home/user
RUN mkdir -p /home/user/app && chown user:user /home/user/app
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
WORKDIR /home/user/app
USER user
# PHP deps — cached unless composer.lock changes
COPY --chown=user:user composer.json composer.lock ./
RUN composer install --no-dev --optimize-autoloader --no-interaction --no-scripts
# Node deps — cached unless package-lock.json changes
COPY --chown=user:user package.json package-lock.json ./
RUN npm ci
# Build-time variables (set as HuggingFace Space Variables, not Secrets)
ARG RAG_API_BASE_URL
ARG VITE_APP_NAME="RAG Hub"
ARG APP_KEY=base64:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=
ENV RAG_API_BASE_URL=$RAG_API_BASE_URL \
VITE_APP_NAME=$VITE_APP_NAME \
APP_KEY=$APP_KEY
# Source code
COPY --chown=user:user . .
RUN php artisan package:discover --ansi \
&& php artisan config:clear \
&& php artisan route:clear \
&& npm run build \
&& rm -rf node_modules \
&& php artisan view:clear
EXPOSE 7860
ENTRYPOINT ["/entrypoint.sh"]
|