File size: 1,671 Bytes
b53f3f5 3774c91 b53f3f5 3774c91 b53f3f5 3774c91 b53f3f5 3774c91 df0bb25 a070025 d53b91c b53f3f5 3774c91 b53f3f5 3774c91 b53f3f5 3774c91 b53f3f5 a070025 | 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 | FROM php:8.4-cli
ARG VITE_APP_NAME=Laravel
ARG RAG_API_BASE_URL=http://localhost/api/v1
ARG RAG_CHAT_API_MODE=direct
ENV APP_NAME="${VITE_APP_NAME}" \
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 \
RAG_API_BASE_URL="${RAG_API_BASE_URL}" \
RAG_CHAT_API_MODE="${RAG_CHAT_API_MODE}" \
VITE_APP_NAME="${VITE_APP_NAME}"
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
WORKDIR /home/user/app
COPY --chown=user:user . .
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
USER user
RUN composer install --no-dev --optimize-autoloader --no-interaction --no-scripts \
&& php artisan package:discover --ansi \
&& php artisan config:clear \
&& php artisan route:clear \
&& npm ci \
&& npm run build \
&& rm -rf node_modules \
&& php artisan view:clear
EXPOSE 7860
ENTRYPOINT ["/entrypoint.sh"]
|