diff --git a/docker-compose.yml b/docker-compose.yml index 0107154..5476273 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -10,7 +10,8 @@ services: bash -c "printenv > /etc/environment && cron -f" volumes: - ./project:/var/www/html - - ./logs/cron.log:/var/log/cron.log + - ./logs/:/var/log/cron + - ./service/logrotate:/etc/logrotate.d/cron-log environment: DYNDNS_USER: "${DYNDNS_USER}" DYNDNS_PASSWORD: "${DYNDNS_PASSWORD}" diff --git a/project/updateip.php b/project/updateip.php index 841f7e6..c3baba0 100644 --- a/project/updateip.php +++ b/project/updateip.php @@ -1,54 +1,71 @@ /usr/local/etc/php/conf.d/timezone.ini COPY --chown=www-data ./project /var/www/html #cron RUN apt-get update && apt-get -y install cron -RUN apt-get install -y --no-install-recommends dnsutils \ +RUN apt-get install -y --no-install-recommends dnsutils logrotate\ && rm -rf /var/lib/apt/lists/* COPY ./service/crontab /etc/cron.d/maincron +COPY ./service/logrotate /etc/logrotate.d/cron-log + RUN chmod 0644 /etc/cron.d/maincron RUN crontab /etc/cron.d/maincron -RUN touch /var/log/cron.log + + + +RUN mkdir -p /var/log/cron +RUN touch /var/log/cron/cron.log diff --git a/service/crontab b/service/crontab index bb78e84..afa9713 100644 --- a/service/crontab +++ b/service/crontab @@ -1 +1 @@ -* * * * * /usr/local/bin/php /var/www/html/updateip.php >> /var/log/cron.log +* * * * * /usr/local/bin/php /var/www/html/updateip.php >> /var/log/cron/cron.log diff --git a/service/logrotate b/service/logrotate new file mode 100644 index 0000000..a829650 --- /dev/null +++ b/service/logrotate @@ -0,0 +1,9 @@ +/var/log/cron/cron.log { + hourly + rotate 14 + missingok + notifempty + compress + delaycompress + copytruncate +} \ No newline at end of file