From 12d149e5d913557517e679aba31ddc1c951c8ea4 Mon Sep 17 00:00:00 2001 From: soheil khaledabadi Date: Sat, 6 Jun 2026 23:26:21 +0330 Subject: [PATCH] chore(docker): add vendor to .dockerignore, update Composer installation in Dockerfile, and clean up README instructions --- .dockerignore | 1 + Dockerfile | 11 ++++++++--- README.md | 7 +------ 3 files changed, 10 insertions(+), 9 deletions(-) diff --git a/.dockerignore b/.dockerignore index 29d16c5..cd1f67e 100644 --- a/.dockerignore +++ b/.dockerignore @@ -9,6 +9,7 @@ !.env.production.example node_modules +vendor npm-debug.log yarn-error.log diff --git a/Dockerfile b/Dockerfile index ab5573c..3d0288e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,11 +2,13 @@ FROM php:8.4-fpm-bookworm AS app WORKDIR /var/www/html ENV COMPOSER_ALLOW_SUPERUSER=1 +ENV COMPOSER_PROCESS_TIMEOUT=600 RUN apt-get update \ && apt-get install -y --no-install-recommends \ default-mysql-client \ default-libmysqlclient-dev \ + git \ libicu-dev \ libzip-dev \ unzip \ @@ -25,9 +27,12 @@ COPY docker/php/php.ini /usr/local/etc/php/conf.d/99-production.ini COPY docker/php/opcache.ini /usr/local/etc/php/conf.d/99-opcache.ini COPY composer.json composer.lock ./ -COPY vendor ./vendor -RUN test -f vendor/autoload.php || (echo "ERROR: vendor folder is missing. Run: composer install --no-dev" >&2 && exit 1) \ - && composer dump-autoload --no-dev --optimize --no-scripts \ +RUN composer install \ + --no-dev \ + --no-autoloader \ + --no-scripts \ + --prefer-dist \ + --no-interaction \ && composer check-platform-reqs --no-dev COPY . . diff --git a/README.md b/README.md index 87ea03d..8a0a576 100644 --- a/README.md +++ b/README.md @@ -17,12 +17,6 @@ APP_KEY=base64:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= سپس `APP_URL`، `HTTP_PORT`، `DB_PASSWORD`، `MARIADB_PASSWORD` و `MARIADB_ROOT_PASSWORD` را هم تغییر دهید. مقدار پیش‌فرض `HTTP_PORT=8080` است. -قبل از build، وابستگی‌های PHP را نصب کن: - -```bash -composer install --no-dev --prefer-dist -``` - برای build کردن imageها: ```bash @@ -99,3 +93,4 @@ docker compose --env-file .env.production down -v ```bash docker compose --env-file .env.production restart app queue scheduler ``` +