Skip to content
This repository was archived by the owner on Jan 3, 2019. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 10 additions & 6 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,25 @@ language: bash
sudo: 9000

env:
- VERSION=8.1
- VERSION=8.0
- VERSION=7.0
- VERSION=6.0
- VERSION=8.1 VARIANT=fpm
- VERSION=8.1 VARIANT=apache
- VERSION=8.0 VARIANT=fpm
- VERSION=8.0 VARIANT=apache
- VERSION=7.0 VARIANT=fpm
- VERSION=7.0 VARIANT=apache
- VERSION=6.0 VARIANT=fpm
- VERSION=6.0 VARIANT=apache

install:
- git clone https://github.com/docker-library/official-images.git ~/official-images

before_script:
- env | sort
- cd "$VERSION"
- image="owncloud:$VERSION"
- image="owncloud:${VERSION}${VARIANT:+-$VARIANT}"

script:
- docker build -t "$image" .
- docker build -t "$image" "${VARIANT}"
- ~/official-images/test/run.sh "$image"

after_script:
Expand Down
File renamed without changes.
47 changes: 47 additions & 0 deletions 6.0/fpm/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
FROM php:5.6-fpm

RUN apt-get update && apt-get install -y \
bzip2 \
libcurl4-openssl-dev \
libfreetype6-dev \
libicu-dev \
libjpeg-dev \
libmcrypt-dev \
libpng12-dev \
libpq-dev \
libxml2-dev \
&& rm -rf /var/lib/apt/lists/*

#gpg key from https://owncloud.org/owncloud.asc
RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys E3036906AD9F30807351FAC32D5D5E97F6978A26

# https://doc.owncloud.org/server/8.1/admin_manual/installation/source_installation.html#prerequisites
RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
&& docker-php-ext-install gd intl mbstring mcrypt 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

ENV OWNCLOUD_VERSION 6.0.9
VOLUME /var/www/html

RUN curl -fsSL -o owncloud.tar.bz2 \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2" \
&& curl -fsSL -o owncloud.tar.bz2.asc \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2.asc" \
&& gpg --verify owncloud.tar.bz2.asc \
&& tar -xjf owncloud.tar.bz2 -C /usr/src/ \
&& rm owncloud.tar.bz2 owncloud.tar.bz2.asc

COPY docker-entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]
CMD ["php-fpm"]
File renamed without changes.
File renamed without changes.
47 changes: 47 additions & 0 deletions 7.0/fpm/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
FROM php:5.6-fpm

RUN apt-get update && apt-get install -y \
bzip2 \
libcurl4-openssl-dev \
libfreetype6-dev \
libicu-dev \
libjpeg-dev \
libmcrypt-dev \
libpng12-dev \
libpq-dev \
libxml2-dev \
&& rm -rf /var/lib/apt/lists/*

#gpg key from https://owncloud.org/owncloud.asc
RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys E3036906AD9F30807351FAC32D5D5E97F6978A26

# https://doc.owncloud.org/server/8.1/admin_manual/installation/source_installation.html#prerequisites
RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
&& docker-php-ext-install gd intl mbstring mcrypt 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

ENV OWNCLOUD_VERSION 7.0.10
VOLUME /var/www/html

RUN curl -fsSL -o owncloud.tar.bz2 \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2" \
&& curl -fsSL -o owncloud.tar.bz2.asc \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2.asc" \
&& gpg --verify owncloud.tar.bz2.asc \
&& tar -xjf owncloud.tar.bz2 -C /usr/src/ \
&& rm owncloud.tar.bz2 owncloud.tar.bz2.asc

COPY docker-entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]
CMD ["php-fpm"]
File renamed without changes.
File renamed without changes.
9 changes: 9 additions & 0 deletions 8.0/apache/docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -e

if [ ! -e '/var/www/html/version.php' ]; then
tar cf - --one-file-system -C /usr/src/owncloud . | tar xf -
chown -R www-data /var/www/html
fi

exec "$@"
51 changes: 51 additions & 0 deletions 8.0/fpm/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
FROM php:5.6-fpm

RUN apt-get update && apt-get install -y \
bzip2 \
libcurl4-openssl-dev \
libfreetype6-dev \
libicu-dev \
libjpeg-dev \
libmcrypt-dev \
libpng12-dev \
libpq-dev \
libxml2-dev \
&& rm -rf /var/lib/apt/lists/*

#gpg key from https://owncloud.org/owncloud.asc
RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys E3036906AD9F30807351FAC32D5D5E97F6978A26

# https://doc.owncloud.org/server/8.1/admin_manual/installation/source_installation.html#prerequisites
RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
&& docker-php-ext-install gd intl mbstring mcrypt 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 pecl install APCu-beta \
&& docker-php-ext-enable apcu

ENV OWNCLOUD_VERSION 8.0.8
VOLUME /var/www/html

RUN curl -fsSL -o owncloud.tar.bz2 \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2" \
&& curl -fsSL -o owncloud.tar.bz2.asc \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2.asc" \
&& gpg --verify owncloud.tar.bz2.asc \
&& tar -xjf owncloud.tar.bz2 -C /usr/src/ \
&& rm owncloud.tar.bz2 owncloud.tar.bz2.asc

COPY docker-entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]
CMD ["php-fpm"]
9 changes: 9 additions & 0 deletions 8.0/fpm/docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -e

if [ ! -e '/var/www/html/version.php' ]; then
tar cf - --one-file-system -C /usr/src/owncloud . | tar xf -
chown -R www-data /var/www/html
fi

exec "$@"
File renamed without changes.
9 changes: 9 additions & 0 deletions 8.1/apache/docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -e

if [ ! -e '/var/www/html/version.php' ]; then
tar cf - --one-file-system -C /usr/src/owncloud . | tar xf -
chown -R www-data /var/www/html
fi

exec "$@"
52 changes: 52 additions & 0 deletions 8.1/fpm/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
FROM php:5.6-fpm

RUN apt-get update && apt-get install -y \
bzip2 \
libcurl4-openssl-dev \
libfreetype6-dev \
libicu-dev \
libjpeg-dev \
libmcrypt-dev \
libmemcached-dev \
libpng12-dev \
libpq-dev \
libxml2-dev \
&& rm -rf /var/lib/apt/lists/*

#gpg key from https://owncloud.org/owncloud.asc
RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys E3036906AD9F30807351FAC32D5D5E97F6978A26

# https://doc.owncloud.org/server/8.1/admin_manual/installation/source_installation.html#prerequisites
RUN docker-php-ext-configure gd --with-png-dir=/usr --with-jpeg-dir=/usr \
&& docker-php-ext-install gd intl mbstring mcrypt 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 pecl install APCu-beta redis memcached \
&& docker-php-ext-enable apcu redis memcached

ENV OWNCLOUD_VERSION 8.1.3
VOLUME /var/www/html

RUN curl -fsSL -o owncloud.tar.bz2 \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2" \
&& curl -fsSL -o owncloud.tar.bz2.asc \
"https://download.owncloud.org/community/owncloud-${OWNCLOUD_VERSION}.tar.bz2.asc" \
&& gpg --verify owncloud.tar.bz2.asc \
&& tar -xjf owncloud.tar.bz2 -C /usr/src/ \
&& rm owncloud.tar.bz2 owncloud.tar.bz2.asc

COPY docker-entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]
CMD ["php-fpm"]
9 changes: 9 additions & 0 deletions 8.1/fpm/docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/bash
set -e

if [ ! -e '/var/www/html/version.php' ]; then
tar cf - --one-file-system -C /usr/src/owncloud . | tar xf -
chown -R www-data /var/www/html
fi

exec "$@"
35 changes: 22 additions & 13 deletions generate-stackbrew-library.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,18 +17,27 @@ url='git://github.com/docker-library/owncloud'
echo '# maintainer: InfoSiftr <github@infosiftr.com> (@infosiftr)'

for version in "${versions[@]}"; do
commit="$(cd "$version" && git log -1 --format='format:%H' -- Dockerfile $(awk 'toupper($1) == "COPY" { for (i = 2; i < NF; i++) { print $i } }' Dockerfile))"
fullVersion="$(grep -m1 'ENV OWNCLOUD_VERSION ' "$version/Dockerfile" | cut -d' ' -f3)"

versionAliases=()
while [ "$fullVersion" != "$version" -a "${fullVersion%[.-]*}" != "$fullVersion" ]; do
versionAliases+=( $fullVersion )
fullVersion="${fullVersion%[.-]*}"
done
versionAliases+=( $version ${aliases[$version]} )

echo
for va in "${versionAliases[@]}"; do
echo "$va: ${url}@${commit} $version"
for variant in apache fpm; do
commit="$(cd "$version/$variant" && git log -1 --format='format:%H' -- Dockerfile $(awk 'toupper($1) == "COPY" { for (i = 2; i < NF; i++) { print $i } }' Dockerfile))"
fullVersion="$(grep -m1 'ENV OWNCLOUD_VERSION ' "$version/$variant/Dockerfile" | cut -d' ' -f3)"

versionAliases=()
while [ "$fullVersion" != "$version" -a "${fullVersion%[.-]*}" != "$fullVersion" ]; do
versionAliases+=( $fullVersion )
fullVersion="${fullVersion%[.-]*}"
done
versionAliases+=( $version ${aliases[$version]} )

echo
for va in "${versionAliases[@]}"; do
echo "$va-$variant: ${url}@${commit} $version/$variant"
if [ "${variant}" == "apache" ]; then
echo "$va: ${url}@${commit} $version/$variant"
else
if [ "$va" == "latest" ]; then
echo "$variant: ${url}@${commit} $version/$variant"
fi
fi
done
done
done
7 changes: 4 additions & 3 deletions update.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,10 @@ versions=( "${versions[@]%/}" )
travisEnv=
for version in "${versions[@]}"; do
latest=$(curl -sSL 'https://owncloud.org/changelog/' |tac|tac| grep -o -m 1 "\(Version\|Release\) ${version}.[[:digit:]]\+" | sed -rn 's/(Version|Release) (.*)/\2/p')
sed -ri -e 's/^(ENV OWNCLOUD_VERSION) .*/\1 '"$latest"'/' "$version/Dockerfile"

travisEnv='\n - VERSION='"$version$travisEnv"
for variant in apache fpm; do
sed -ri -e 's/^(ENV OWNCLOUD_VERSION) .*/\1 '"$latest"'/' "$version/$variant/Dockerfile"
travisEnv='\n - VERSION='"$version"' VARIANT='"$variant$travisEnv"
done
done

travis="$(awk -v 'RS=\n\n' '$1 == "env:" { $0 = "env:'"$travisEnv"'" } { printf "%s%s", $0, RS }' .travis.yml)"
Expand Down