Files
MKM/Dockerfile
2026-02-26 13:39:45 +08:00

39 lines
880 B
Docker

FROM docker.io/alpine:3.21
# Install PHP 8.4 and common extensions from Alpine community repos
RUN apk add --no-cache \
php84 \
php84-fpm \
php84-pdo_mysql \
php84-mbstring \
php84-exif \
php84-pcntl \
php84-bcmath \
php84-gd \
php84-zip \
php84-intl \
php84-curl \
php84-tokenizer \
php84-xml \
php84-xmlwriter \
php84-session \
curl
# Create a symlink so 'php' command works
RUN ln -sf /usr/bin/php84 /usr/bin/php
WORKDIR /var/www
# Get Composer
COPY --from=docker.io/composer:latest /usr/bin/composer /usr/bin/composer
# Copy only the application files
# The .dockerignore will prevent it from touching restricted system folders
COPY . /var/www
# Laravel permission fix
RUN chmod -R 775 /var/www/storage /var/www/bootstrap/cache
EXPOSE 8000
CMD ["php", "artisan", "serve", "--host=0.0.0.0", "--port=8000"]