From 768582abc0ee4f0af16982f455d077ea58ff723f Mon Sep 17 00:00:00 2001 From: sparklyballs Date: Mon, 22 Aug 2016 12:09:22 +0100 Subject: [PATCH] tidy up in general, use tar.bz2 instead of zip --- Dockerfile | 65 +++++++++++++++----------------- root/etc/cont-init.d/40-config | 10 ++--- root/etc/cont-init.d/50-install | 24 +++++++----- root/etc/cont-init.d/60-memcache | 8 +++- 4 files changed, 57 insertions(+), 50 deletions(-) diff --git a/Dockerfile b/Dockerfile index 9278e53..3419a7a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,11 @@ FROM lsiobase/alpine.nginx MAINTAINER sparklyballs -# set paths -ENV WWW_ROOT="/config/www" -ENV NEXTCLOUD_PATH="${WWW_ROOT}/nextcloud" +# package version +ENV NEXTCLOUD_VER="9.0.53" + +# environment settings +ENV NEXTCLOUD_PATH="/config/www/nextcloud" # install build-dependencies RUN \ @@ -19,25 +21,7 @@ RUN \ samba-dev \ zlib-dev && \ -# fetch php smbclient source - git clone git://github.com/eduardok/libsmbclient-php.git /tmp/smbclient && \ - -# compile smbclient - cd /tmp/smbclient && \ - phpize && \ - ./configure && \ - make && \ - make install && \ - -# uninstall build-dependencies - apk del --purge \ - build-dependencies && \ - -# cleanup - rm -rfv /tmp/* - # install runtime packages -RUN \ apk add --no-cache \ curl \ ffmpeg \ @@ -72,26 +56,39 @@ RUN \ sudo \ tar \ unzip && \ - apk add --no-cache --repository http://nl.alpinelinux.org/alpine/edge/testing \ - php5-memcached -# configure php extensions -RUN \ - echo "extension="smbclient.so"" >> /etc/php5/php.ini + apk add --no-cache \ + --repository http://nl.alpinelinux.org/alpine/edge/testing \ + php5-memcached && \ -# configure php for nextcloud -RUN \ +# fetch php smbclient source + git clone git://github.com/eduardok/libsmbclient-php.git /tmp/smbclient && \ + +# compile smbclient + cd /tmp/smbclient && \ + phpize && \ + ./configure && \ + make && \ + make install && \ + +# uninstall build-dependencies + apk del --purge \ + build-dependencies && \ + +# configure php and nginx for nextcloud + echo "extension="smbclient.so"" >> /etc/php5/php.ini && \ sed -i \ 's/;always_populate_raw_post_data = -1/always_populate_raw_post_data = -1/g' \ /etc/php5/php.ini && \ - echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /defaults/nginx-fpm.conf + echo "env[PATH] = /usr/local/bin:/usr/bin:/bin" >> /defaults/nginx-fpm.conf && \ -# add local files +# cleanup + rm -rf \ + /tmp/* + +# copy local files COPY root/ / # ports and volumes -VOLUME /config /data EXPOSE 443 - -# set nextcloud version -ENV NEXTCLOUD_VER="9.0.53" +VOLUME /config /data diff --git a/root/etc/cont-init.d/40-config b/root/etc/cont-init.d/40-config index 6482129..4deb6b2 100644 --- a/root/etc/cont-init.d/40-config +++ b/root/etc/cont-init.d/40-config @@ -1,8 +1,8 @@ #!/usr/bin/with-contenv bash # permissions -chown abc:abc /config /data -chown -R abc:abc /var/lib/nginx - -# set cronjob -crontab /defaults/nextcloud +chown abc:abc \ + /config \ + /data +chown -R abc:abc \ + /var/lib/nginx diff --git a/root/etc/cont-init.d/50-install b/root/etc/cont-init.d/50-install index 20bb0f4..c0e8795 100644 --- a/root/etc/cont-init.d/50-install +++ b/root/etc/cont-init.d/50-install @@ -1,14 +1,20 @@ #!/usr/bin/with-contenv bash -mkdir -p "${WWW_ROOT}" -chown abc:abc "${WWW_ROOT}" +# create folders +mkdir -p \ + "${NEXTCLOUD_PATH}" +# install app if [ ! -e "${NEXTCLOUD_PATH}/index.php" ]; then -curl -o /tmp/nextcloud.zip -L \ -https://download.nextcloud.com/server/releases/nextcloud-"${NEXTCLOUD_VER}".zip -cd /tmp || true -unzip nextcloud.zip -mv /tmp/nextcloud "${NEXTCLOUD_PATH}" -rm -f /tmp/nextcloud.zip -chown abc:abc -R "${NEXTCLOUD_PATH}" +curl -o /tmp/nextcloud.tar.bz2 -L \ + https://download.nextcloud.com/server/releases/nextcloud-"${NEXTCLOUD_VER}".tar.bz2 +tar xf /tmp/nextcloud.tar.bz2 -C \ + "${NEXTCLOUD_PATH}" --strip-components=1 +rm -f \ + /tmp/nextcloud.tar.bz2 +chown abc:abc -R \ + "${NEXTCLOUD_PATH}" fi + +# set cronjob +crontab /defaults/nextcloud diff --git a/root/etc/cont-init.d/60-memcache b/root/etc/cont-init.d/60-memcache index 2a07095..bd6ac15 100644 --- a/root/etc/cont-init.d/60-memcache +++ b/root/etc/cont-init.d/60-memcache @@ -1,5 +1,9 @@ #!/usr/bin/with-contenv bash -[[ ! -f /config/www/nextcloud/config/config.php ]] && cp /defaults/config.php /config/www/nextcloud/config/config.php +# copy config +[[ ! -f /config/www/nextcloud/config/config.php ]] && \ +cp /defaults/config.php /config/www/nextcloud/config/config.php -chown abc:abc /config/www/nextcloud/config/config.php +# permissions +chown abc:abc \ + /config/www/nextcloud/config/config.php