From dfcca6af8f928a1a4427e64ed3dca6a3a505a56e Mon Sep 17 00:00:00 2001 From: sylvain Date: Thu, 15 May 2025 19:03:25 +0000 Subject: [PATCH] Actualiser dockerfile --- dockerfile | 65 +++++++++++++++++++++++++++++------------------------- 1 file changed, 35 insertions(+), 30 deletions(-) diff --git a/dockerfile b/dockerfile index 695fb93..5ea3588 100644 --- a/dockerfile +++ b/dockerfile @@ -11,47 +11,52 @@ ARG SMTP_PASS ARG ADMIN_EMAIL # Installer les paquets nécessaires -RUN apt-get update && apt-get install -y apache2 php php-cli php-mysql php-curl php-fpm php-gd php-json php-xml php-zip php-intl php-mbstring \ -php-bcmath php-gmp software-properties-common git openssl msmtp mariadb-client cron curl unzip nano +RUN apt-get update && apt-get install -y \ + apache2 \ + php php-cli php-mysql php-curl php-fpm php-gd php-json php-xml php-zip php-mbstring php-bcmath php-gmp php-intl \ + software-properties-common git msmtp mariadb-client cron curl unzip nano # Nettoyer RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* -# Générer un certificat SSL auto-signé -#RUN mkdir -p /etc/ssl/private && mkdir -p /etc/ssl/certs && \ -# openssl req -x509 -nodes -subj "/C=FR/ST=France/L=Paris/O=organization/OU=Org/CN=${DOMAIN}" \ -# -newkey rsa:4096 -keyout /etc/ssl/private/${DOMAIN}.key -out /etc/ssl/certs/${DOMAIN}.crt -days 365 - -# Copier et activer la config Apache -COPY src/container_apache.conf /etc/apache2/sites-available/$DOMAIN.conf -RUN sed -i "s/{{DOMAIN}}/$DOMAIN/g" /etc/apache2/sites-available/$DOMAIN.conf -RUN a2dissite 000-default default-ssl -#RUN a2ensite $DOMAIN.conf -RUN a2ensite ${DOMAIN}.conf -#RUN a2enmod ssl rewrite -#derniers ajout -RUN a2enmod rewrite - +# Copier et activer la config Apache (HTTP uniquement) +COPY src/container_apache.conf /etc/apache2/sites-available/${DOMAIN}.conf +RUN sed -i "s/{{DOMAIN}}/${DOMAIN}/g" /etc/apache2/sites-available/${DOMAIN}.conf && \ + a2dissite 000-default.conf && \ + a2ensite ${DOMAIN}.conf && \ + a2enmod rewrite # Installer Hubzilla -RUN rm -r /var/www/html/ -RUN git clone https://framagit.org/hubzilla/core.git /var/www/html/ -RUN cd /var/www/html/ && util/add_addon_repo https://framagit.org/hubzilla/addons.git official -RUN mkdir -p "/var/www/html/store/[data]/smarty3" && \ - chown -R www-data:www-data /var/www/html/ +WORKDIR /var/www/html +RUN git clone https://framagit.org/hubzilla/core.git . && \ + util/add_addon_repo https://framagit.org/hubzilla/addons.git official && \ + mkdir -p store/[data]/smarty3 && \ + chown -R www-data:www-data /var/www/html # Configurer msmtp COPY src/msmtprc /etc/msmtprc -RUN sed -i "s/{{SMTP_EMAIL}}/${SMTP_EMAIL}/g" /etc/msmtprc && sed -i "s/{{SMTP_SERVER}}/${SMTP_SERVER}/g" /etc/msmtprc && \ - sed -i "s/{{SMTP_PORT}}/${SMTP_PORT}/g" /etc/msmtprc && sed -i "s/{{SMTP_USER}}/${SMTP_USER}/g" /etc/msmtprc && \ - sed -i "s/{{SMTP_PASS}}/${SMTP_PASS}/g" /etc/msmtprc - -RUN chmod 600 /etc/msmtprc && chown www-data:www-data /etc/msmtprc +RUN sed -i "s/{{SMTP_EMAIL}}/${SMTP_EMAIL}/g" /etc/msmtprc && \ + sed -i "s/{{SMTP_SERVER}}/${SMTP_SERVER}/g" /etc/msmtprc && \ + sed -i "s/{{SMTP_PORT}}/${SMTP_PORT}/g" /etc/msmtprc && \ + sed -i "s/{{SMTP_USER}}/${SMTP_USER}/g" /etc/msmtprc && \ + sed -i "s/{{SMTP_PASS}}/${SMTP_PASS}/g" /etc/msmtprc && \ + chmod 600 /etc/msmtprc && \ + chown www-data:www-data /etc/msmtprc + +# Activer msmtp dans PHP RUN echo "sendmail_path = /usr/bin/msmtp -t" >> /etc/php/8.2/apache2/php.ini -#config php.ini## +# Config PHP (upload size + register_argc_argv) RUN echo "upload_max_filesize = 20M" >> /etc/php/8.2/apache2/php.ini && \ - echo "post_max_size = 20M" >> /etc/php/8.2/apache2/php.ini + echo "post_max_size = 20M" >> /etc/php/8.2/apache2/php.ini && \ + echo "register_argc_argv = On" >> /etc/php/8.2/apache2/php.ini + +# Fichier .htconfig.php (préconfiguré) +COPY src/.htconfig.php /var/www/html/.htconfig.php +RUN LOCATION_HASH=$(cat /dev/urandom | tr -dc 'a-f0-9' | fold -w 64 | head -n 1) && \ + sed -i "s/{{DOMAIN}}/${DOMAIN}/g" /var/www/html/.htconfig.php && \ + sed -i "s/{{LOCATION_HASH}}/${LOCATION_HASH}/g" /var/www/html/.htconfig.php && \ + sed -i "s/{{ADMIN_EMAIL}}/${ADMIN_EMAIL}/g" /var/www/html/.htconfig.php # Cron RUN echo "*/15 * * * * cd /var/www/html; /usr/bin/php Zotlabs/Daemon/Master.php Cron" | crontab -u www-data - @@ -59,4 +64,4 @@ RUN echo "*/15 * * * * cd /var/www/html; /usr/bin/php Zotlabs/Daemon/Master.php # Script de démarrage COPY src/start.sh /start.sh RUN chmod +x /start.sh -CMD ["/bin/bash", "/start.sh"] \ No newline at end of file +CMD ["/bin/bash", "/start.sh"]