From 1270dad4442543929dfdbc35fabd3717b790a8cb Mon Sep 17 00:00:00 2001 From: eroncero Date: Fri, 15 Aug 2025 19:11:21 +0200 Subject: [PATCH] A bunch of things --- 2do.txt | 9 +++++++++ del_vols.sh | 4 ++-- docker-compose.yaml | 14 +++++++------- mariadb-srv/Dockerfile | 3 ++- mariadb-srv/project/entrypoint/entrypoint.sh | 7 +++++++ mariadb-srv/project/entrypoint/install-packages.sh | 3 +++ {multi-php-fpm => multi-php-fpm-srv}/Dockerfile | 1 + .../project/buildtime/buildtime_php_ver_inst.sh | 0 .../project/buildtime/sury-repo.sh | 0 .../project/entrypoint/container-php-ver-inst.sh | 0 .../project/entrypoint/entrypoint.sh | 1 + .../project/entrypoint/install-php-versions.sh | 2 -- .../project/entrypoint/start-php-fpm.sh | 0 .../project/etc/8.2/fpm/pool.d/moodle4_5.conf | 0 .../project/etc/8.2/fpm/pool.d/wordpress6.conf | 0 nginx-srv/project/entrypoint/entrypoint.sh | 3 +++ 16 files changed, 35 insertions(+), 12 deletions(-) create mode 100644 2do.txt create mode 100644 mariadb-srv/project/entrypoint/install-packages.sh rename {multi-php-fpm => multi-php-fpm-srv}/Dockerfile (99%) rename {multi-php-fpm => multi-php-fpm-srv}/project/buildtime/buildtime_php_ver_inst.sh (100%) rename {multi-php-fpm => multi-php-fpm-srv}/project/buildtime/sury-repo.sh (100%) rename {multi-php-fpm => multi-php-fpm-srv}/project/entrypoint/container-php-ver-inst.sh (100%) rename {multi-php-fpm => multi-php-fpm-srv}/project/entrypoint/entrypoint.sh (82%) rename {multi-php-fpm => multi-php-fpm-srv}/project/entrypoint/install-php-versions.sh (96%) rename {multi-php-fpm => multi-php-fpm-srv}/project/entrypoint/start-php-fpm.sh (100%) rename {multi-php-fpm => multi-php-fpm-srv}/project/etc/8.2/fpm/pool.d/moodle4_5.conf (100%) rename {multi-php-fpm => multi-php-fpm-srv}/project/etc/8.2/fpm/pool.d/wordpress6.conf (100%) diff --git a/2do.txt b/2do.txt new file mode 100644 index 0000000..d2b6719 --- /dev/null +++ b/2do.txt @@ -0,0 +1,9 @@ +- Install certbot in the container instead of the image (download only in the image). It should be like this, since /etc/letsencrypt should be added as a volume. I assume it might break apt install certbot in a new docker compose up -d. + +- Copy php-fpm pools from host to /etc/php/8.2/fpm/pool.d + +- Instead of apt-get update, just apt-get install (because packages are already downloaded). + +- Code refactor. + + diff --git a/del_vols.sh b/del_vols.sh index 3673acd..8a3fa1e 100755 --- a/del_vols.sh +++ b/del_vols.sh @@ -3,8 +3,8 @@ sudo rm -rfv nginx-srv/etc sudo rm -rfv nginx-srv/var -sudo rm -rfv multi-php-fpm/etc -sudo rm -rfv multi-php-fpm/run +sudo rm -rfv multi-php-fpm-srv/etc +sudo rm -rfv multi-php-fpm-srv/run sudo rm -rfv mariadb-srv/run sudo rm -rfv mariadb-srv/var diff --git a/docker-compose.yaml b/docker-compose.yaml index 5bdd6d4..b0ef6d0 100644 --- a/docker-compose.yaml +++ b/docker-compose.yaml @@ -15,20 +15,20 @@ services: - ./nginx-srv/etc/nginx/sites-available:/etc/nginx/sites-available # Server blocks aka virtual hosts. - ./nginx-srv/var/www:/var/www # Webpage public html. - ./nginx-srv/etc/letsencrypt:/etc/letsencrypt - - ./multi-php-fpm/run/php:/run/php # Socket files dir. It will be mounted and shared from the PHP container. + - ./multi-php-fpm-srv/run/php:/run/php # Socket files dir. It will be mounted and shared from the PHP container. - multi-php-fpm: - image: eroncero/multi-php-fpm:latest + multi-php-fpm-srv: + image: eroncero/multi-php-fpm-srv:latest build: - context: ./multi-php-fpm + context: ./multi-php-fpm-srv dockerfile: Dockerfile restart: unless-stopped - hostname: multi-php-fpm + hostname: multi-php-fpm-srv environment: - PHP_VERSIONS=${PHP_VERSIONS} # Inherits from .env volumes: - - ./multi-php-fpm/etc/php:/etc/php - - ./multi-php-fpm/run/php:/run/php + - ./multi-php-fpm-srv/etc/php:/etc/php + - ./multi-php-fpm-srv/run/php:/run/php - ./mariadb-srv/run/mysql:/run/mysqld # php-mysql should be able connecting to the MariaDB socket. mariadb-srv: diff --git a/mariadb-srv/Dockerfile b/mariadb-srv/Dockerfile index 6b45b0b..0e4a9a0 100644 --- a/mariadb-srv/Dockerfile +++ b/mariadb-srv/Dockerfile @@ -3,8 +3,9 @@ FROM debian:bookworm ENV DEBIAN_FRONTEND=noninteractive ENV DEBCONF_NONINTERACTIVE_SEEN=true -RUN apt-get update; apt-get full-upgrade -y; apt-get autoclean -y; apt-get install mariadb-server mariadb-client iputils-ping -y --download-only +RUN apt-get update; apt-get full-upgrade -y; apt-get autoclean -y; apt-get install iputils-ping -y; apt-get install mariadb-server mariadb-client -y --download-only COPY project/entrypoint/entrypoint.sh /entrypoint/entrypoint.sh +COPY project/entrypoint/install-packages.sh /entrypoint/install-packages.sh ENTRYPOINT ["/bin/sh", "/entrypoint/entrypoint.sh"] diff --git a/mariadb-srv/project/entrypoint/entrypoint.sh b/mariadb-srv/project/entrypoint/entrypoint.sh index 65b9669..f639ed5 100644 --- a/mariadb-srv/project/entrypoint/entrypoint.sh +++ b/mariadb-srv/project/entrypoint/entrypoint.sh @@ -2,6 +2,13 @@ service mariadb start +chown -R mysql:mysql /run/mysql +chown -R mysql:mysql /var/lib/mysql + +/bin/sh /entrypoint/install-packages.sh + +service mariadb start + # Run the CMD that was passed (or default) exec "$@" diff --git a/mariadb-srv/project/entrypoint/install-packages.sh b/mariadb-srv/project/entrypoint/install-packages.sh new file mode 100644 index 0000000..d4fa0e9 --- /dev/null +++ b/mariadb-srv/project/entrypoint/install-packages.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +apt-get update; apt-get full-upgrade -y; apt-get install mariadb-server mariadb-client -y diff --git a/multi-php-fpm/Dockerfile b/multi-php-fpm-srv/Dockerfile similarity index 99% rename from multi-php-fpm/Dockerfile rename to multi-php-fpm-srv/Dockerfile index 7a00818..fcb6a2c 100644 --- a/multi-php-fpm/Dockerfile +++ b/multi-php-fpm-srv/Dockerfile @@ -2,6 +2,7 @@ FROM debian:bookworm ENV DEBIAN_FRONTEND=noninteractive ENV DEBCONF_NONINTERACTIVE_SEEN=true + RUN apt-get update; apt-get full-upgrade -y; apt-get autoclean -y && apt-get install iputils-ping -y COPY project/buildtime/sury-repo.sh /tmp/buildtime/sury-repo.sh diff --git a/multi-php-fpm/project/buildtime/buildtime_php_ver_inst.sh b/multi-php-fpm-srv/project/buildtime/buildtime_php_ver_inst.sh similarity index 100% rename from multi-php-fpm/project/buildtime/buildtime_php_ver_inst.sh rename to multi-php-fpm-srv/project/buildtime/buildtime_php_ver_inst.sh diff --git a/multi-php-fpm/project/buildtime/sury-repo.sh b/multi-php-fpm-srv/project/buildtime/sury-repo.sh similarity index 100% rename from multi-php-fpm/project/buildtime/sury-repo.sh rename to multi-php-fpm-srv/project/buildtime/sury-repo.sh diff --git a/multi-php-fpm/project/entrypoint/container-php-ver-inst.sh b/multi-php-fpm-srv/project/entrypoint/container-php-ver-inst.sh similarity index 100% rename from multi-php-fpm/project/entrypoint/container-php-ver-inst.sh rename to multi-php-fpm-srv/project/entrypoint/container-php-ver-inst.sh diff --git a/multi-php-fpm/project/entrypoint/entrypoint.sh b/multi-php-fpm-srv/project/entrypoint/entrypoint.sh similarity index 82% rename from multi-php-fpm/project/entrypoint/entrypoint.sh rename to multi-php-fpm-srv/project/entrypoint/entrypoint.sh index e98bc51..f73eb39 100644 --- a/multi-php-fpm/project/entrypoint/entrypoint.sh +++ b/multi-php-fpm-srv/project/entrypoint/entrypoint.sh @@ -2,6 +2,7 @@ /bin/sh /entrypoint/container-php-ver-inst.sh /bin/sh /entrypoint/install-php-versions.sh +/bin/sh /entrypoint/start-php-fpm.sh # Run the CMD that was passed (or default) exec "$@" diff --git a/multi-php-fpm/project/entrypoint/install-php-versions.sh b/multi-php-fpm-srv/project/entrypoint/install-php-versions.sh similarity index 96% rename from multi-php-fpm/project/entrypoint/install-php-versions.sh rename to multi-php-fpm-srv/project/entrypoint/install-php-versions.sh index 98a8036..7ec02b9 100644 --- a/multi-php-fpm/project/entrypoint/install-php-versions.sh +++ b/multi-php-fpm-srv/project/entrypoint/install-php-versions.sh @@ -74,5 +74,3 @@ if ! update-alternatives --set php "/usr/bin/php${DEF_PHP_INTERPRETER}"; then exit 1 fi -# Start PHP-FPM services -exec /bin/sh /entrypoint/start-php-fpm.sh diff --git a/multi-php-fpm/project/entrypoint/start-php-fpm.sh b/multi-php-fpm-srv/project/entrypoint/start-php-fpm.sh similarity index 100% rename from multi-php-fpm/project/entrypoint/start-php-fpm.sh rename to multi-php-fpm-srv/project/entrypoint/start-php-fpm.sh diff --git a/multi-php-fpm/project/etc/8.2/fpm/pool.d/moodle4_5.conf b/multi-php-fpm-srv/project/etc/8.2/fpm/pool.d/moodle4_5.conf similarity index 100% rename from multi-php-fpm/project/etc/8.2/fpm/pool.d/moodle4_5.conf rename to multi-php-fpm-srv/project/etc/8.2/fpm/pool.d/moodle4_5.conf diff --git a/multi-php-fpm/project/etc/8.2/fpm/pool.d/wordpress6.conf b/multi-php-fpm-srv/project/etc/8.2/fpm/pool.d/wordpress6.conf similarity index 100% rename from multi-php-fpm/project/etc/8.2/fpm/pool.d/wordpress6.conf rename to multi-php-fpm-srv/project/etc/8.2/fpm/pool.d/wordpress6.conf diff --git a/nginx-srv/project/entrypoint/entrypoint.sh b/nginx-srv/project/entrypoint/entrypoint.sh index de1b533..84ba3e6 100644 --- a/nginx-srv/project/entrypoint/entrypoint.sh +++ b/nginx-srv/project/entrypoint/entrypoint.sh @@ -1,6 +1,9 @@ #!/bin/sh +apt-get update; apt-get full-upgrade -y; apt-get install nginx certbot python3-certbot-nginx openssl vim curl iputils-ping -y; apt-get autoclean -y + /bin/sh /entrypoint/gen-cert.sh +service nginx start # Run the CMD that was passed (or default) exec "$@"