From 95a68936b9c54004ae1c213262e33a7cb0e50653 Mon Sep 17 00:00:00 2001 From: core23 Date: Fri, 31 May 2024 15:58:48 +0200 Subject: [PATCH] Restore debian image --- .github/workflows/continuous-integration.yml | 1 + .github/workflows/push-container.yml | 4 + php/debian/8.1/Dockerfile | 80 ++++++++++++++++++++ php/debian/8.2/Dockerfile | 80 ++++++++++++++++++++ php/debian/8.3/Dockerfile | 80 ++++++++++++++++++++ 5 files changed, 245 insertions(+) create mode 100644 php/debian/8.1/Dockerfile create mode 100644 php/debian/8.2/Dockerfile create mode 100644 php/debian/8.3/Dockerfile diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 23f19e4..c181453 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -22,6 +22,7 @@ jobs: base-image: - "alpine" + - "debian" steps: - name: "Checkout" diff --git a/.github/workflows/push-container.yml b/.github/workflows/push-container.yml index fb78d10..7083d1c 100644 --- a/.github/workflows/push-container.yml +++ b/.github/workflows/push-container.yml @@ -21,6 +21,7 @@ jobs: base-image: - "alpine" + - "debian" steps: - name: "Checkout" @@ -45,6 +46,9 @@ jobs: - name: "Setup Docker Buildx" uses: "docker/setup-buildx-action@v3" + - name: "Version" + run: "docker run --rm --entrypoint=php ghcr.io/core23/jenkins-php-agent:${{ matrix.php-version }}-${{ matrix.base-image }} --version" + - name: "Login to GitHub Container Registry" uses: "docker/login-action@v3" with: diff --git a/php/debian/8.1/Dockerfile b/php/debian/8.1/Dockerfile new file mode 100644 index 0000000..3c5118f --- /dev/null +++ b/php/debian/8.1/Dockerfile @@ -0,0 +1,80 @@ +FROM jenkins/inbound-agent + +MAINTAINER Christian Gripp + +# Switch to install mode +USER root + +RUN apt-get update && apt-get install -y --no-install-recommends \ + apt-transport-https \ + apt-utils sendmail libpng-dev zlib1g-dev \ + gnupg2 curl git ant wget + +# NPM tools +RUN curl -sL https://deb.nodesource.com/setup_20.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g yarn --unsafe-perm + +RUN wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add - \ + && echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list + +# install php extensions +RUN wget "http://ftp.de.debian.org/debian/pool/main/libf/libffi/libffi6_3.2.1-9_$(dpkg --print-architecture).deb" && \ + dpkg -i "libffi6_3.2.1-9_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/o/openssl/libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" && \ + dpkg -i "libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" && \ + dpkg -i "libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/t/tiff/libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" && \ + dpkg -i "libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" + +RUN apt-get update && \ + apt-get install -y \ + php8.1 \ + php8.1-bcmath \ + php8.1-cli \ + php8.1-ctype \ + php8.1-curl \ + php8.1-dom \ + php8.1-exif \ + php8.1-fileinfo \ + php8.1-fpm \ + php8.1-gd \ + php8.1-iconv \ + php8.1-intl \ + php8.1-mbstring \ + php8.1-mysqli \ + php8.1-opcache \ + php8.1-pdo \ + php8.1-phar \ + php8.1-posix \ + php8.1-redis \ + php8.1-simplexml \ + php8.1-soap \ + php8.1-tokenizer \ + php8.1-xdebug \ + php8.1-xsl \ + php8.1-xml \ + php8.1-xmlreader \ + php8.1-xmlwriter \ + php8.1-zip \ + && apt-get clean -y + +# Get Composer +COPY --from=composer /usr/bin/composer /usr/local/bin/composer + +# Get phive +RUN wget -O phive.phar "https://phar.io/releases/phive.phar" && \ + wget -O phive.phar.asc "https://phar.io/releases/phive.phar.asc" && \ + gpg --keyserver hkps://keys.openpgp.org --recv-keys 0x6AF725270AB81E04D79442549D8A98B29B2D5D79 && \ + gpg --verify phive.phar.asc phive.phar && \ + rm phive.phar.asc && \ + chmod +x phive.phar && \ + mv phive.phar /usr/local/bin/phive + +USER jenkins + +ENTRYPOINT ["jenkins-slave"] diff --git a/php/debian/8.2/Dockerfile b/php/debian/8.2/Dockerfile new file mode 100644 index 0000000..c02b34e --- /dev/null +++ b/php/debian/8.2/Dockerfile @@ -0,0 +1,80 @@ +FROM jenkins/inbound-agent + +MAINTAINER Christian Gripp + +# Switch to install mode +USER root + +RUN apt-get update && apt-get install -y --no-install-recommends \ + apt-transport-https \ + apt-utils sendmail libpng-dev zlib1g-dev \ + gnupg2 curl git ant wget + +# NPM tools +RUN curl -sL https://deb.nodesource.com/setup_20.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g yarn --unsafe-perm + +RUN wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add - \ + && echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list + +# install php extensions +RUN wget "http://ftp.de.debian.org/debian/pool/main/libf/libffi/libffi6_3.2.1-9_$(dpkg --print-architecture).deb" && \ + dpkg -i "libffi6_3.2.1-9_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/o/openssl/libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" && \ + dpkg -i "libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" && \ + dpkg -i "libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/t/tiff/libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" && \ + dpkg -i "libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" + +RUN apt-get update && \ + apt-get install -y \ + php8.2 \ + php8.2-bcmath \ + php8.2-cli \ + php8.2-ctype \ + php8.2-curl \ + php8.2-dom \ + php8.2-exif \ + php8.2-fileinfo \ + php8.2-fpm \ + php8.2-gd \ + php8.2-iconv \ + php8.2-intl \ + php8.2-mbstring \ + php8.2-mysqli \ + php8.2-opcache \ + php8.2-pdo \ + php8.2-phar \ + php8.2-posix \ + php8.2-redis \ + php8.2-simplexml \ + php8.2-soap \ + php8.2-tokenizer \ + php8.2-xdebug \ + php8.2-xsl \ + php8.2-xml \ + php8.2-xmlreader \ + php8.2-xmlwriter \ + php8.2-zip \ + && apt-get clean -y + +# Get Composer +COPY --from=composer /usr/bin/composer /usr/local/bin/composer + +# Get phive +RUN wget -O phive.phar "https://phar.io/releases/phive.phar" && \ + wget -O phive.phar.asc "https://phar.io/releases/phive.phar.asc" && \ + gpg --keyserver hkps://keys.openpgp.org --recv-keys 0x6AF725270AB81E04D79442549D8A98B29B2D5D79 && \ + gpg --verify phive.phar.asc phive.phar && \ + rm phive.phar.asc && \ + chmod +x phive.phar && \ + mv phive.phar /usr/local/bin/phive + +USER jenkins + +ENTRYPOINT ["jenkins-slave"] diff --git a/php/debian/8.3/Dockerfile b/php/debian/8.3/Dockerfile new file mode 100644 index 0000000..2fe5991 --- /dev/null +++ b/php/debian/8.3/Dockerfile @@ -0,0 +1,80 @@ +FROM jenkins/inbound-agent + +MAINTAINER Christian Gripp + +# Switch to install mode +USER root + +RUN apt-get update && apt-get install -y --no-install-recommends \ + apt-transport-https \ + apt-utils sendmail libpng-dev zlib1g-dev \ + gnupg2 curl git ant wget + +# NPM tools +RUN curl -sL https://deb.nodesource.com/setup_20.x | bash - \ + && apt-get install -y nodejs \ + && npm install -g yarn --unsafe-perm + +RUN wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add - \ + && echo "deb https://packages.sury.org/php/ buster main" | tee /etc/apt/sources.list.d/php.list + +# install php extensions +RUN wget "http://ftp.de.debian.org/debian/pool/main/libf/libffi/libffi6_3.2.1-9_$(dpkg --print-architecture).deb" && \ + dpkg -i "libffi6_3.2.1-9_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/o/openssl/libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" && \ + dpkg -i "libssl1.1_1.1.1w-0+deb11u1_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" && \ + dpkg -i "libwebp6_0.6.1-2.1+deb11u2_$(dpkg --print-architecture).deb" + +RUN wget "http://ftp.de.debian.org/debian/pool/main/t/tiff/libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" && \ + dpkg -i "libtiff5_4.2.0-1+deb11u5_$(dpkg --print-architecture).deb" + +RUN apt-get update && \ + apt-get install -y \ + php8.3 \ + php8.3-bcmath \ + php8.3-cli \ + php8.3-ctype \ + php8.3-curl \ + php8.3-dom \ + php8.3-exif \ + php8.3-fileinfo \ + php8.3-fpm \ + php8.3-gd \ + php8.3-iconv \ + php8.3-intl \ + php8.3-mbstring \ + php8.3-mysqli \ + php8.3-opcache \ + php8.3-pdo \ + php8.3-phar \ + php8.3-posix \ + php8.3-redis \ + php8.3-simplexml \ + php8.3-soap \ + php8.3-tokenizer \ + php8.3-xdebug \ + php8.3-xsl \ + php8.3-xml \ + php8.3-xmlreader \ + php8.3-xmlwriter \ + php8.3-zip \ + && apt-get clean -y + +# Get Composer +COPY --from=composer /usr/bin/composer /usr/local/bin/composer + +# Get phive +RUN wget -O phive.phar "https://phar.io/releases/phive.phar" && \ + wget -O phive.phar.asc "https://phar.io/releases/phive.phar.asc" && \ + gpg --keyserver hkps://keys.openpgp.org --recv-keys 0x6AF725270AB81E04D79442549D8A98B29B2D5D79 && \ + gpg --verify phive.phar.asc phive.phar && \ + rm phive.phar.asc && \ + chmod +x phive.phar && \ + mv phive.phar /usr/local/bin/phive + +USER jenkins + +ENTRYPOINT ["jenkins-slave"]