chore(docker): move WORKDIR declaration earlier and reorder steps
Set working directory before copying files to avoid potential conflicts with host files. Also reorder Dockerfile steps for better logical flow and maintainability.
This commit is contained in:
11
Dockerfile
11
Dockerfile
@@ -1,5 +1,8 @@
|
|||||||
FROM php:8.4-fpm
|
FROM php:8.4-fpm
|
||||||
|
|
||||||
|
# Set working directory early to avoid conflicts with host files
|
||||||
|
WORKDIR /var/www
|
||||||
|
|
||||||
# Install system dependencies
|
# Install system dependencies
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
git \
|
git \
|
||||||
@@ -24,15 +27,13 @@ RUN apt-get clean && rm -rf /var/lib/apt/lists/*
|
|||||||
# Get latest Composer
|
# Get latest Composer
|
||||||
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
||||||
|
|
||||||
# Set working directory
|
# Copy application files
|
||||||
WORKDIR /var/www
|
|
||||||
|
|
||||||
# Copy existing application directory contents
|
|
||||||
COPY --chown=www-data:www-data . /var/www
|
COPY --chown=www-data:www-data . /var/www
|
||||||
|
|
||||||
# Change current user to www
|
# Change current user to www
|
||||||
USER www-data
|
USER www-data
|
||||||
|
|
||||||
# Expose port 8000 and start php-fpm server
|
# Expose port 8000
|
||||||
EXPOSE 8000
|
EXPOSE 8000
|
||||||
|
|
||||||
CMD ["php", "artisan", "serve", "--host=0.0.0.0", "--port=8000"]
|
CMD ["php", "artisan", "serve", "--host=0.0.0.0", "--port=8000"]
|
||||||
|
|||||||
Reference in New Issue
Block a user