From c888fbcbccc1bf2c6dc4a1986bba8f283ae1e6f0 Mon Sep 17 00:00:00 2001 From: Artem Baranovskyi <artem.baranovsky1980@gmail.com> Date: Thu, 19 Sep 2024 18:14:30 +0300 Subject: [PATCH] Few infrastructure improvements. --- docker-compose.yml | 1 + flask/Dockerfile | 4 +--- install_moodle.sh | 16 +++++++++++----- moodle/Dockerfile | 6 ++++-- 4 files changed, 17 insertions(+), 10 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index f06e28d..7845167 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -36,6 +36,7 @@ services: ports: - 80:80 - 443:443 + - 9003:9003 dns: - 8.8.8.8 - 8.8.4.4 diff --git a/flask/Dockerfile b/flask/Dockerfile index 5915a1e..437458f 100644 --- a/flask/Dockerfile +++ b/flask/Dockerfile @@ -11,15 +11,13 @@ RUN python3 -m venv /opt/myenv ENV PATH="/opt/myenv/bin:$PATH" WORKDIR /app -RUN ls -la /app COPY . /app +COPY ./asyst /app/asyst # Installing dependencies RUN /opt/myenv/bin/pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple -r /app/requirements.txt -#RUN /opt/myenv/bin/python3 -m pip install -r /app/requirements.txt RUN /opt/myenv/bin/python3 -m pip install --upgrade setuptools wheel -COPY ./asyst /app/asyst # Set permissions RUN chown -R www-data:www-data /app/asyst diff --git a/install_moodle.sh b/install_moodle.sh index bfc4a97..a5fb416 100755 --- a/install_moodle.sh +++ b/install_moodle.sh @@ -54,10 +54,14 @@ docker-compose exec -u root moodle bash -c "apt-get update && apt-get install -y update-locale" # Composer installation to run phpunit tests - docker-compose exec moodle php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" - docker-compose exec moodle php composer-setup.php --install-dir=/usr/local/bin --filename=composer - docker-compose exec moodle php -r "unlink('composer-setup.php');" - docker-compose exec moodle bash -c "cd /app && /usr/local/bin/composer install --no-interaction --no-plugins --no-scripts --no-dev --prefer-dist && /usr/local/bin/composer dump-autoload" +docker-compose exec moodle bash -c " + php -r \"copy('https://getcomposer.org/installer', 'composer-setup.php');\" && + php composer-setup.php --install-dir=/usr/local/bin --filename=composer && + php -r \"unlink('composer-setup.php');\" && + cd /app && + /usr/local/bin/composer install --no-interaction --no-plugins --no-scripts --no-dev --prefer-dist && + /usr/local/bin/composer dump-autoload +" # Next, configure PHPUnit for Moodle: docker-compose exec moodle php admin/tool/phpunit/cli/init.php @@ -80,7 +84,9 @@ cd /app/asyst/Source/Skript/german /opt/myenv/bin/python3 /app/api.py EOF' - # Make the script executable & run it docker-compose exec flask chmod +x /usr/local/bin/run_sag docker-compose exec flask /usr/local/bin/run_sag + +# Adding cron-record at the Moodle container +docker-compose exec -u root moodle bash -c "echo '* * * * * /usr/bin/php ${MOODLE_BASE_DIR}/admin/cli/cron.php >/dev/null 2>&1' >> /etc/crontabs/root && crontab /etc/crontabs/root" diff --git a/moodle/Dockerfile b/moodle/Dockerfile index e80c721..2c6149f 100644 --- a/moodle/Dockerfile +++ b/moodle/Dockerfile @@ -29,8 +29,10 @@ RUN echo "max_input_vars = 5000" >> /etc/php/8.2/cli/php.ini RUN echo "zend_extension=xdebug.so" >> /etc/php/8.2/apache2/php.ini RUN echo "xdebug.mode=debug" >> /etc/php/8.2/apache2/php.ini RUN echo "xdebug.start_with_request=yes" >> /etc/php/8.2/apache2/php.ini -RUN echo "xdebug.client_host=host.docker.internal" >> /etc/php/8.2/apache2/php.ini +#RUN echo "xdebug.client_host=host.docker.internal" >> /etc/php/8.2/apache2/php.ini +RUN echo "xdebug.client_host=127.0.0.1" >> /etc/php/8.2/apache2/php.ini RUN echo "xdebug.client_port=9003" >> /etc/php/8.2/apache2/php.ini +RUN echo "xdebug.log=/tmp/xdebug.log" >> /etc/php/8.2/apache2/php.ini RUN chmod 1777 /tmp @@ -123,5 +125,5 @@ RUN a2enmod ssl #Opening ports EXPOSE 80 443 -# Running supervisord +# Launch Apache server in foreground CMD ["apache2ctl", "-D", "FOREGROUND"] \ No newline at end of file -- GitLab