summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTilo Spannagel <development@tilosp.de>2017-06-10 23:15:01 +0200
committerTilo Spannagel <development@tilosp.de>2017-06-10 23:15:11 +0200
commit86c40037bfbbf1ff8516ceb37825419668e50602 (patch)
tree0e68379816587458e0de48ff8a73b95ea8312f43
parent9b815390c8adfd2610069dbf5b5f05815b038ead (diff)
Remove end of life versions
-rw-r--r--.travis.yml2
-rw-r--r--9.0/apache/Dockerfile78
-rw-r--r--9.0/apache/apps.config.php15
-rwxr-xr-x9.0/apache/docker-entrypoint.sh54
-rw-r--r--9.0/fpm/Dockerfile76
-rw-r--r--9.0/fpm/apps.config.php15
-rwxr-xr-x9.0/fpm/docker-entrypoint.sh54
-rwxr-xr-xupdate.sh64
8 files changed, 35 insertions, 323 deletions
diff --git a/.travis.yml b/.travis.yml
index 3ea7128e..14d4ea14 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -8,8 +8,6 @@ env:
- VERSION=11.0 VARIANT=apache
- VERSION=10.0 VARIANT=fpm
- VERSION=10.0 VARIANT=apache
- - VERSION=9.0 VARIANT=fpm
- - VERSION=9.0 VARIANT=apache
install:
- git clone https://github.com/docker-library/official-images.git ~/official-images
diff --git a/9.0/apache/Dockerfile b/9.0/apache/Dockerfile
deleted file mode 100644
index 07ede264..00000000
--- a/9.0/apache/Dockerfile
+++ /dev/null
@@ -1,78 +0,0 @@
-FROM php:5.6-apache
-
-RUN apt-get update && apt-get install -y \
- rsync \
- bzip2 \
- libcurl4-openssl-dev \
- libfreetype6-dev \
- libicu-dev \
- libjpeg-dev \
- libldap2-dev \
- libmcrypt-dev \
- libmemcached-dev \
- libpng12-dev \
- libpq-dev \
- libxml2-dev \
- && 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 \
- && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysql opcache pdo_mysql pdo_pgsql pgsql zip
-
-# set recommended PHP.ini settings
-# see https://secure.php.net/manual/en/opcache.installation.php
-RUN { \
- echo 'opcache.memory_consumption=128'; \
- echo 'opcache.interned_strings_buffer=8'; \
- echo 'opcache.max_accelerated_files=4000'; \
- echo 'opcache.revalidate_freq=60'; \
- echo 'opcache.fast_shutdown=1'; \
- echo 'opcache.enable_cli=1'; \
- } > /usr/local/etc/php/conf.d/opcache-recommended.ini
-RUN a2enmod rewrite
-
-# PECL extensions
-RUN set -ex \
- && pecl install APCu-4.0.10 \
- && pecl install memcached-2.2.0 \
- && pecl install redis-2.2.8 \
- && docker-php-ext-enable apcu redis memcached
-RUN a2enmod rewrite
-
-ENV NEXTCLOUD_VERSION 9.0.58
-VOLUME /var/www/html
-
-RUN curl -fsSL -o nextcloud.tar.bz2 \
- "https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_VERSION}.tar.bz2" \
- && curl -fsSL -o nextcloud.tar.bz2.asc \
- "https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_VERSION}.tar.bz2.asc" \
- && export GNUPGHOME="$(mktemp -d)" \
-# gpg key from https://nextcloud.com/nextcloud.asc
- && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 28806A878AE423A28372792ED75899B9A724937A \
- && gpg --batch --verify nextcloud.tar.bz2.asc nextcloud.tar.bz2 \
- && rm -r "$GNUPGHOME" nextcloud.tar.bz2.asc \
- && tar -xjf nextcloud.tar.bz2 -C /usr/src/ \
- && rm nextcloud.tar.bz2 \
- && rm -rf /usr/src/nextcloud/updater \
- # https://docs.nextcloud.com/server/11/admin_manual/installation/installation_wizard.html#setting-strong-directory-permissions
- && mkdir -p /usr/src/nextcloud/data \
- && mkdir -p /usr/src/nextcloud/custom_apps \
- # only used in nextcloud 9 (assets)
- && mkdir -p /usr/src/nextcloud/assets \
- && find /usr/src/nextcloud/ -type f -print0 | xargs -0 chmod 0640 \
- && find /usr/src/nextcloud/ -type d -print0 | xargs -0 chmod 0750 \
- && chown -R root:www-data /usr/src/nextcloud/ \
- && chown -R www-data:www-data /usr/src/nextcloud/custom_apps/ \
- && chown -R www-data:www-data /usr/src/nextcloud/config/ \
- # only used in nextcloud 9 (assets)
- && chown -R www-data:www-data /usr/src/nextcloud/assets/ \
- && chown -R www-data:www-data /usr/src/nextcloud/data/ \
- && chown -R www-data:www-data /usr/src/nextcloud/themes/ \
- && chmod +x /usr/src/nextcloud/occ
-
-COPY docker-entrypoint.sh /entrypoint.sh
-COPY apps.config.php /usr/src/nextcloud/config/apps.config.php
-
-ENTRYPOINT ["/entrypoint.sh"]
-CMD ["apache2-foreground"]
diff --git a/9.0/apache/apps.config.php b/9.0/apache/apps.config.php
deleted file mode 100644
index a4bed833..00000000
--- a/9.0/apache/apps.config.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-$CONFIG = array (
- "apps_paths" => array (
- 0 => array (
- "path" => OC::$SERVERROOT."/apps",
- "url" => "/apps",
- "writable" => false,
- ),
- 1 => array (
- "path" => OC::$SERVERROOT."/custom_apps",
- "url" => "/custom_apps",
- "writable" => true,
- ),
- ),
-);
diff --git a/9.0/apache/docker-entrypoint.sh b/9.0/apache/docker-entrypoint.sh
deleted file mode 100755
index b1265d39..00000000
--- a/9.0/apache/docker-entrypoint.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/bash
-set -e
-
-# version_greater A B returns whether A > B
-function version_greater() {
- [[ "$(printf '%s\n' "$@" | sort -V | head -n 1)" != "$1" ]];
-}
-
-installed_version="0.0.0~unknown"
-if [ -f /var/www/html/version.php ]; then
- installed_version=$(php -r 'require "/var/www/html/version.php"; echo "$OC_VersionString";')
-fi
-image_version=$(php -r 'require "/usr/src/nextcloud/version.php"; echo "$OC_VersionString";')
-
-if version_greater "$installed_version" "$image_version"; then
- echo "Can't start Nextcloud because the version of the data ($installed_version) is higher than the docker image version ($image_version) and downgrading is not supported. Are you sure you have pulled the newest image version?"
- exit 1
-fi
-
-if version_greater "$image_version" "$installed_version"; then
- if [ "$installed_version" != "0.0.0~unknown" ]; then
- su - www-data -s /bin/bash -c 'php /var/www/html/occ app:list' > /tmp/list_before
- fi
-
- rsync -a --delete --exclude /config/ --exclude /data/ --exclude /custom_apps/ --exclude /themes/ /usr/src/nextcloud/ /var/www/html/
-
- if [ ! -d /var/www/html/config ]; then
- cp -arT /usr/src/nextcloud/config /var/www/html/config
- fi
-
- if [ ! -d /var/www/html/data ]; then
- cp -arT /usr/src/nextcloud/data /var/www/html/data
- fi
-
- if [ ! -d /var/www/html/custom_apps ]; then
- cp -arT /usr/src/nextcloud/custom_apps /var/www/html/custom_apps
- cp -a /usr/src/nextcloud/config/apps.config.php /var/www/html/config/apps.config.php
- fi
-
- if [ ! -d /var/www/html/themes ]; then
- cp -arT /usr/src/nextcloud/themes /var/www/html/themes
- fi
-
- if [ "$installed_version" != "0.0.0~unknown" ]; then
- su - www-data -s /bin/bash -c 'php /var/www/html/occ upgrade --no-app-disable'
-
- su - www-data -s /bin/bash -c 'php /var/www/html/occ app:list' > /tmp/list_after
- echo "The following apps have beed disabled:"
- diff <(sed -n "/Enabled:/,/Disabled:/p" /tmp/list_before) <(sed -n "/Enabled:/,/Disabled:/p" /tmp/list_after) | grep '<' | cut -d- -f2 | cut -d: -f1
- rm -f /tmp/list_before /tmp/list_after
- fi
-fi
-
-exec "$@"
diff --git a/9.0/fpm/Dockerfile b/9.0/fpm/Dockerfile
deleted file mode 100644
index fd82cb3a..00000000
--- a/9.0/fpm/Dockerfile
+++ /dev/null
@@ -1,76 +0,0 @@
-FROM php:5.6-fpm
-
-RUN apt-get update && apt-get install -y \
- rsync \
- bzip2 \
- libcurl4-openssl-dev \
- libfreetype6-dev \
- libicu-dev \
- libjpeg-dev \
- libldap2-dev \
- libmcrypt-dev \
- libmemcached-dev \
- libpng12-dev \
- libpq-dev \
- libxml2-dev \
- && 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 \
- && docker-php-ext-install gd exif intl mbstring mcrypt ldap mysql opcache pdo_mysql pdo_pgsql pgsql zip
-
-# set recommended PHP.ini settings
-# see https://secure.php.net/manual/en/opcache.installation.php
-RUN { \
- echo 'opcache.memory_consumption=128'; \
- echo 'opcache.interned_strings_buffer=8'; \
- echo 'opcache.max_accelerated_files=4000'; \
- echo 'opcache.revalidate_freq=60'; \
- echo 'opcache.fast_shutdown=1'; \
- echo 'opcache.enable_cli=1'; \
- } > /usr/local/etc/php/conf.d/opcache-recommended.ini
-
-# PECL extensions
-RUN set -ex \
- && pecl install APCu-4.0.10 \
- && pecl install memcached-2.2.0 \
- && pecl install redis-2.2.8 \
- && docker-php-ext-enable apcu redis memcached
-
-ENV NEXTCLOUD_VERSION 9.0.58
-VOLUME /var/www/html
-
-RUN curl -fsSL -o nextcloud.tar.bz2 \
- "https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_VERSION}.tar.bz2" \
- && curl -fsSL -o nextcloud.tar.bz2.asc \
- "https://download.nextcloud.com/server/releases/nextcloud-${NEXTCLOUD_VERSION}.tar.bz2.asc" \
- && export GNUPGHOME="$(mktemp -d)" \
-# gpg key from https://nextcloud.com/nextcloud.asc
- && gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 28806A878AE423A28372792ED75899B9A724937A \
- && gpg --batch --verify nextcloud.tar.bz2.asc nextcloud.tar.bz2 \
- && rm -r "$GNUPGHOME" nextcloud.tar.bz2.asc \
- && tar -xjf nextcloud.tar.bz2 -C /usr/src/ \
- && rm nextcloud.tar.bz2 \
- && rm -rf /usr/src/nextcloud/updater \
- # https://docs.nextcloud.com/server/11/admin_manual/installation/installation_wizard.html#setting-strong-directory-permissions
- && mkdir -p /usr/src/nextcloud/data \
- && mkdir -p /usr/src/nextcloud/custom_apps \
- # only used in nextcloud 9 (assets)
- && mkdir -p /usr/src/nextcloud/assets \
- && find /usr/src/nextcloud/ -type f -print0 | xargs -0 chmod 0640 \
- && find /usr/src/nextcloud/ -type d -print0 | xargs -0 chmod 0750 \
- && chown -R root:www-data /usr/src/nextcloud/ \
- && chown -R www-data:www-data /usr/src/nextcloud/custom_apps/ \
- && chown -R www-data:www-data /usr/src/nextcloud/config/ \
- # only used in nextcloud 9 (assets)
- && chown -R www-data:www-data /usr/src/nextcloud/assets/ \
- && chown -R www-data:www-data /usr/src/nextcloud/data/ \
- && chown -R www-data:www-data /usr/src/nextcloud/themes/ \
- && chmod +x /usr/src/nextcloud/occ
-
-COPY docker-entrypoint.sh /entrypoint.sh
-COPY apps.config.php /usr/src/nextcloud/config/apps.config.php
-
-ENTRYPOINT ["/entrypoint.sh"]
-CMD ["php-fpm"]
diff --git a/9.0/fpm/apps.config.php b/9.0/fpm/apps.config.php
deleted file mode 100644
index a4bed833..00000000
--- a/9.0/fpm/apps.config.php
+++ /dev/null
@@ -1,15 +0,0 @@
-<?php
-$CONFIG = array (
- "apps_paths" => array (
- 0 => array (
- "path" => OC::$SERVERROOT."/apps",
- "url" => "/apps",
- "writable" => false,
- ),
- 1 => array (
- "path" => OC::$SERVERROOT."/custom_apps",
- "url" => "/custom_apps",
- "writable" => true,
- ),
- ),
-);
diff --git a/9.0/fpm/docker-entrypoint.sh b/9.0/fpm/docker-entrypoint.sh
deleted file mode 100755
index b1265d39..00000000
--- a/9.0/fpm/docker-entrypoint.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/bin/bash
-set -e
-
-# version_greater A B returns whether A > B
-function version_greater() {
- [[ "$(printf '%s\n' "$@" | sort -V | head -n 1)" != "$1" ]];
-}
-
-installed_version="0.0.0~unknown"
-if [ -f /var/www/html/version.php ]; then
- installed_version=$(php -r 'require "/var/www/html/version.php"; echo "$OC_VersionString";')
-fi
-image_version=$(php -r 'require "/usr/src/nextcloud/version.php"; echo "$OC_VersionString";')
-
-if version_greater "$installed_version" "$image_version"; then
- echo "Can't start Nextcloud because the version of the data ($installed_version) is higher than the docker image version ($image_version) and downgrading is not supported. Are you sure you have pulled the newest image version?"
- exit 1
-fi
-
-if version_greater "$image_version" "$installed_version"; then
- if [ "$installed_version" != "0.0.0~unknown" ]; then
- su - www-data -s /bin/bash -c 'php /var/www/html/occ app:list' > /tmp/list_before
- fi
-
- rsync -a --delete --exclude /config/ --exclude /data/ --exclude /custom_apps/ --exclude /themes/ /usr/src/nextcloud/ /var/www/html/
-
- if [ ! -d /var/www/html/config ]; then
- cp -arT /usr/src/nextcloud/config /var/www/html/config
- fi
-
- if [ ! -d /var/www/html/data ]; then
- cp -arT /usr/src/nextcloud/data /var/www/html/data
- fi
-
- if [ ! -d /var/www/html/custom_apps ]; then
- cp -arT /usr/src/nextcloud/custom_apps /var/www/html/custom_apps
- cp -a /usr/src/nextcloud/config/apps.config.php /var/www/html/config/apps.config.php
- fi
-
- if [ ! -d /var/www/html/themes ]; then
- cp -arT /usr/src/nextcloud/themes /var/www/html/themes
- fi
-
- if [ "$installed_version" != "0.0.0~unknown" ]; then
- su - www-data -s /bin/bash -c 'php /var/www/html/occ upgrade --no-app-disable'
-
- su - www-data -s /bin/bash -c 'php /var/www/html/occ app:list' > /tmp/list_after
- echo "The following apps have beed disabled:"
- diff <(sed -n "/Enabled:/,/Disabled:/p" /tmp/list_before) <(sed -n "/Enabled:/,/Disabled:/p" /tmp/list_after) | grep '<' | cut -d- -f2 | cut -d: -f1
- rm -f /tmp/list_before /tmp/list_after
- fi
-fi
-
-exec "$@"
diff --git a/update.sh b/update.sh
index 4d3a54e1..ddbb1d0d 100755
--- a/update.sh
+++ b/update.sh
@@ -16,47 +16,53 @@ latests=( $( curl -fsSL 'https://download.nextcloud.com/server/releases/' |tac|t
grep -oE '[[:digit:]]+(.[[:digit:]]+)+' | \
sort -uV ) )
+find -maxdepth 1 -type d -regextype sed -regex '\./[[:digit:]]\+\.[[:digit:]]\+' -exec rm -r '{}' \;
+
travisEnv=
for latest in "${latests[@]}"; do
version=$(echo "$latest" | cut -d. -f1-2)
- for variant in apache fpm; do
- # Create the version+variant directory with a Dockerfile.
- mkdir -p "$version/$variant"
+ # Only add versions >= 10
+ if version_greater_or_equal "$version" "10.0"; then
+
+ for variant in apache fpm; do
+ # Create the version+variant directory with a Dockerfile.
+ mkdir -p "$version/$variant"
- template="Dockerfile.template"
- if version_greater_or_equal "$version" "11.0"; then
- template="Dockerfile-php7.template"
- fi
- cp "$template" "$version/$variant/Dockerfile"
+ template="Dockerfile.template"
+ if version_greater_or_equal "$version" "11.0"; then
+ template="Dockerfile-php7.template"
+ fi
+ cp "$template" "$version/$variant/Dockerfile"
- echo "updating $latest [$version] $variant"
+ echo "updating $latest [$version] $variant"
- # Replace the variables.
- sed -ri -e '
- s/%%VARIANT%%/'"$variant"'/g;
- s/%%VERSION%%/'"$latest"'/g;
- s/%%CMD%%/'"${cmd[$variant]}"'/g;
- ' "$version/$variant/Dockerfile"
+ # Replace the variables.
+ sed -ri -e '
+ s/%%VARIANT%%/'"$variant"'/g;
+ s/%%VERSION%%/'"$latest"'/g;
+ s/%%CMD%%/'"${cmd[$variant]}"'/g;
+ ' "$version/$variant/Dockerfile"
- # Remove Apache commands if we're not an Apache variant.
- if [ "$variant" != "apache" ]; then
- sed -ri -e '/a2enmod/d' "$version/$variant/Dockerfile"
- fi
+ # Remove Apache commands if we're not an Apache variant.
+ if [ "$variant" != "apache" ]; then
+ sed -ri -e '/a2enmod/d' "$version/$variant/Dockerfile"
+ fi
- # Remove the assets folder if version >= 10.0
- if version_greater_or_equal "$version" "10.0"; then
- sed -ri -e '/assets/d' "$version/$variant/Dockerfile"
- fi
+ # Remove the assets folder if version >= 10.0
+ if version_greater_or_equal "$version" "10.0"; then
+ sed -ri -e '/assets/d' "$version/$variant/Dockerfile"
+ fi
- # Copy the docker-entrypoint.
- cp docker-entrypoint.sh "$version/$variant/docker-entrypoint.sh"
+ # Copy the docker-entrypoint.
+ cp docker-entrypoint.sh "$version/$variant/docker-entrypoint.sh"
- # Copy apps.config.php
- cp apps.config.php "$version/$variant/apps.config.php"
+ # Copy apps.config.php
+ cp apps.config.php "$version/$variant/apps.config.php"
- travisEnv='\n - VERSION='"$version"' VARIANT='"$variant$travisEnv"
- done
+ travisEnv='\n - VERSION='"$version"' VARIANT='"$variant$travisEnv"
+ done
+ fi
done
# update .travis.yml