magento2-docker/Dockerfile

74 lines
1.3 KiB
Docker
Executable File

FROM alpine:3.18.4
# Update package
RUN apk update --no-cache
RUN apk add --no-cache \
bash \
git \
vim \
zip \
composer
# APACHE2
RUN apk add --no-cache \
apache2 \
apache2-utils \
apache2-ssl \
build-base \
autoconf \
curl \
tar \
libtool \
pcre-dev \
libxml2-dev \
openssl \
bison \
re2c \
file \
libressl-dev
# config httpd.conf
RUN sed -i '/LoadModule rewrite_module/s/^#//g' /etc/apache2/httpd.conf
# Install PHP and extenions
RUN apk add --no-cache \
php81-common \
php81-zip \
php81-curl \
php81-pdo \
php81-pdo_mysql \
php81-mysqli \
php81-openssl \
php81-mbstring \
php81-zip \
php81-bcmath \
php81-ctype \
php81-dom \
php81-gd \
php81-intl \
php81-simplexml \
php81-soap \
php81-sodium \
php81-xsl \
php81-tokenizer \
php81-fileinfo \
php81-sockets \
php81-xml \
php81-xmlwriter \
php81-session \
php81-apache2
# config php.ini
RUN sed -i 's/memory_limit = 128M/memory_limit = -1/' /etc/php81/php.ini
# Working file
WORKDIR /var/www/html
# Composer
COPY ./composer.json /var/www/html/
COPY ./auth.json /var/www/html/
RUN composer install
COPY ./docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh
ENTRYPOINT ["/docker-entrypoint.sh"]