1- # Usa l'immagine ufficiale di PHP con Apache
21FROM php:8.3-apache-bullseye
32
4- # Abilita i moduli richiesti
5- RUN apt-get update && apt-get install -y \
6- libzip-dev \
7- libicu-dev \
3+ ENV DEBIAN_FRONTEND=noninteractive \
4+ LAST_VERSION_URL="https://api.github.com/repos/devcode-it/openstamanager/releases/latest" \
5+ APP_DIR="/var/www/html"
6+
7+ RUN apt-get update && apt-get install -y --no-install-recommends \
8+ git \
89 libcurl4-openssl-dev \
9- libxml2-dev \
10- libpng-dev \
10+ libicu-dev \
1111 libonig-dev \
12+ libpng-dev \
13+ libjpeg-dev \
14+ libxml2-dev \
15+ libxslt-dev \
16+ libzip-dev \
1217 unzip \
13- libxml2-dev \
14- libxslt-dev \
1518 wget \
16- git && \
17- docker-php-ext-install zip mbstring pdo_mysql intl soap curl && \
18- a2enmod rewrite
19-
20- RUN docker-php-ext-install xsl ftp
21-
22- RUN docker-php-ext-enable xsl ftp
23-
24- RUN apt-get install -y libpng-dev libjpeg-dev \
2519 && docker-php-ext-configure gd --with-jpeg \
26- && docker-php-ext-install gd
27-
20+ && docker-php-ext-install \
21+ curl \
22+ ftp \
23+ gd \
24+ intl \
25+ mbstring \
26+ pdo_mysql \
27+ soap \
28+ xsl \
29+ zip \
30+ && a2enmod rewrite \
31+ && apt-get clean \
32+ && rm -rf /var/lib/apt/lists/* /tmp/*
2833
29- # Configura i parametri di PHP
3034COPY php.ini /usr/local/etc/php/
3135
32- # Configura l'applicazione
33- WORKDIR /var/www/html
34- # Esponi la porta per Apache
35- EXPOSE 80
36-
37- # Clona il repository
38- RUN last_version_v=$(curl -s https://api.github.com/repos/devcode-it/openstamanager/releases/latest | grep tag_name | cut -d '"' -f 4) && last_version=$(echo $last_version_v | sed 's/^v//' ) && wget -O openstamanager.zip "https://github.com/devcode-it/openstamanager/releases/download/${last_version_v}/openstamanager-${last_version}.zip" && unzip openstamanager.zip
36+ WORKDIR ${APP_DIR}
3937
40- RUN mkdir -p /var/www/html/files/temp /var/www/html/logs
41- RUN chown -R $USER:www-data /var/www/html/
42- RUN chmod -R 770 /var/www/html/
43- RUN rm openstamanager.zip
38+ RUN --mount=type=cache,target=/tmp \
39+ last_version_v=$(curl -s ${LAST_VERSION_URL} | grep tag_name | cut -d '"' -f 4) && \
40+ last_version=$(echo $last_version_v | sed 's/^v//' ) && \
41+ wget -O openstamanager.zip "https://github.com/devcode-it/openstamanager/releases/download/${last_version_v}/openstamanager-${last_version}.zip" && \
42+ unzip openstamanager.zip && \
43+ mkdir -p ${APP_DIR}/files/temp ${APP_DIR}/logs && \
44+ chown -R www-data:www-data ${APP_DIR} && \
45+ chmod -R 750 ${APP_DIR} && \
46+ rm openstamanager.zip
4447
45- # Pulizia file temporanei
46- RUN apt autoclean && rm -rf /var/lib/apt/lists/*
48+ EXPOSE 80
0 commit comments