From 7d4e0960b4c958b10471ff1a561253adfe3f0c32 Mon Sep 17 00:00:00 2001 From: Tilo Spannagel Date: Sun, 25 Jun 2017 18:08:55 +0200 Subject: [PATCH 1/3] Add multi arch support --- generate-stackbrew-library.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 9ede46c9..d016b36a 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -73,6 +73,7 @@ for version in "${versions[@]}"; do cat <<-EOE Tags: $(join ', ' "${variantAliases[@]}") + Architectures: amd64, arm32v7, arm64v8, i386, ppc64le, s390x GitCommit: $commit Directory: $version/$variant EOE From 820f21cdf219a0c23ed282de2f5e982503eb1b42 Mon Sep 17 00:00:00 2001 From: Tilo Spannagel Date: Thu, 29 Jun 2017 12:57:03 +0200 Subject: [PATCH 2/3] Add travis tests for i386 --- .travis.yml | 19 +++++++++++++------ update.sh | 4 +++- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/.travis.yml b/.travis.yml index 5165ceb3..83276eef 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ install: before_script: - env | sort - image="nextcloud:${VERSION}${VARIANT:+-$VARIANT}" + - if [[ "$ARCH" == 'i386' ]]; then sed -i -e 's/FROM php/FROM i386\/php/g' "${VERSION}/${VARIANT}/Dockerfile"; fi script: - travis_retry docker build -t "$image" "${VERSION}/${VARIANT}" @@ -40,9 +41,15 @@ jobs: - ./generate-stackbrew-library.sh - stage: test images - env: VERSION=10.0 VARIANT=fpm - - env: VERSION=10.0 VARIANT=apache - - env: VERSION=11.0 VARIANT=fpm - - env: VERSION=11.0 VARIANT=apache - - env: VERSION=12.0 VARIANT=fpm - - env: VERSION=12.0 VARIANT=apache + env: VERSION=10.0 VARIANT=fpm ARCH=amd64 + - env: VERSION=10.0 VARIANT=fpm ARCH=i386 + - env: VERSION=10.0 VARIANT=apache ARCH=amd64 + - env: VERSION=10.0 VARIANT=apache ARCH=i386 + - env: VERSION=11.0 VARIANT=fpm ARCH=amd64 + - env: VERSION=11.0 VARIANT=fpm ARCH=i386 + - env: VERSION=11.0 VARIANT=apache ARCH=amd64 + - env: VERSION=11.0 VARIANT=apache ARCH=i386 + - env: VERSION=12.0 VARIANT=fpm ARCH=amd64 + - env: VERSION=12.0 VARIANT=fpm ARCH=i386 + - env: VERSION=12.0 VARIANT=apache ARCH=amd64 + - env: VERSION=12.0 VARIANT=apache ARCH=i386 diff --git a/update.sh b/update.sh index 647e3e27..c8a94169 100755 --- a/update.sh +++ b/update.sh @@ -59,7 +59,9 @@ for latest in "${latests[@]}"; do # Copy apps.config.php cp apps.config.php "$version/$variant/apps.config.php" - travisEnv='\n - env: VERSION='"$version"' VARIANT='"$variant$travisEnv" + for arch in i386 amd64; do + travisEnv='\n - env: VERSION='"$version"' VARIANT='"$variant"' ARCH='"$arch$travisEnv" + done done fi done From 0bd790309e71d629a2cd5f21feb096557b1ca087 Mon Sep 17 00:00:00 2001 From: Tilo Spannagel Date: Thu, 29 Jun 2017 12:57:59 +0200 Subject: [PATCH 3/3] Use debMultiarch as libdir --- 10.0/apache/Dockerfile | 5 +++-- 10.0/fpm/Dockerfile | 5 +++-- 11.0/apache/Dockerfile | 5 +++-- 11.0/fpm/Dockerfile | 5 +++-- 12.0/apache/Dockerfile | 5 +++-- 12.0/fpm/Dockerfile | 5 +++-- Dockerfile-php7.template | 5 +++-- Dockerfile.template | 5 +++-- 8 files changed, 24 insertions(+), 16 deletions(-) diff --git a/10.0/apache/Dockerfile b/10.0/apache/Dockerfile index 570aef6c..d8b15972 100644 --- a/10.0/apache/Dockerfile +++ b/10.0/apache/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysql opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/10.0/fpm/Dockerfile b/10.0/fpm/Dockerfile index b60b57f2..b160a46c 100644 --- a/10.0/fpm/Dockerfile +++ b/10.0/fpm/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysql opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/11.0/apache/Dockerfile b/11.0/apache/Dockerfile index 71978ad8..d4c0ff52 100644 --- a/11.0/apache/Dockerfile +++ b/11.0/apache/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysqli opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/11.0/fpm/Dockerfile b/11.0/fpm/Dockerfile index 78890a39..9aa10e0b 100644 --- a/11.0/fpm/Dockerfile +++ b/11.0/fpm/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysqli opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/12.0/apache/Dockerfile b/12.0/apache/Dockerfile index 4bcc5f03..1b05272b 100644 --- a/12.0/apache/Dockerfile +++ b/12.0/apache/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysqli opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/12.0/fpm/Dockerfile b/12.0/fpm/Dockerfile index d69e770e..41b7365f 100644 --- a/12.0/fpm/Dockerfile +++ b/12.0/fpm/Dockerfile @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysqli opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/Dockerfile-php7.template b/Dockerfile-php7.template index 203ba662..ef49df7d 100644 --- a/Dockerfile-php7.template +++ b/Dockerfile-php7.template @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysqli opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings diff --git a/Dockerfile.template b/Dockerfile.template index 14cf3626..581e9122 100644 --- a/Dockerfile.template +++ b/Dockerfile.template @@ -16,8 +16,9 @@ RUN apt-get update && apt-get install -y \ && rm -rf /var/lib/apt/lists/* # https://docs.nextcloud.com/server/9/admin_manual/installation/source_installation.html -RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ - && docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu \ +RUN debMultiarch="$(dpkg-architecture --query DEB_BUILD_MULTIARCH)" \ + && docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \ + && docker-php-ext-configure ldap --with-libdir="lib/$debMultiarch" \ && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysql opcache pdo_mysql pdo_pgsql pgsql zip # set recommended PHP.ini settings