From 57f01475f3dee768ebd124ea89638843d795f925 Mon Sep 17 00:00:00 2001 From: thelamer Date: Tue, 31 Dec 2019 15:08:18 -0800 Subject: [PATCH] rebase to alpine 3.11 and php7, drop mssql support, and pull in a static URL zip --- Dockerfile | 152 +++++++-------------------- Dockerfile.aarch64 | 152 +++++++-------------------- Dockerfile.armhf | 152 +++++++-------------------- Jenkinsfile | 31 +++--- README.md | 5 +- jenkins-vars.yml | 3 +- patches/memcache-faulty-inline.patch | 141 ------------------------- patches/xcache.ini | 3 - readme-vars.yml | 7 +- root/etc/cont-init.d/30-config | 2 +- 10 files changed, 133 insertions(+), 515 deletions(-) delete mode 100644 patches/memcache-faulty-inline.patch delete mode 100644 patches/xcache.ini diff --git a/Dockerfile b/Dockerfile index 771e2f2..be415ae 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,70 +1,53 @@ -FROM lsiobase/alpine:3.8 +FROM lsiobase/alpine:3.11 # set version label ARG BUILD_DATE ARG VERSION ARG PROJECTSEND_RELEASE LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" -LABEL maintainer="sparklyballs" - -# copy patches -COPY patches/ /tmp/patches/ - -# package versions -ARG APCU_VER="4.0.11" -ARG MEMCACHE_VER="3.0.8" -ARG XCACHE_VER="3.2.0" +LABEL maintainer="thelamer" RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache --virtual=build-dependencies \ - autoconf \ - automake \ - bison \ - file \ - flex \ - g++ \ - gawk \ - gcc \ - make \ - php5-dev \ - zlib-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ apache2 \ apache2-utils \ curl \ - php5-apache2 \ - php5-bcmath \ - php5-bz2 \ - php5-cli \ - php5-ctype \ - php5-curl \ - php5-dom \ - php5-gd \ - php5-gettext \ - php5-gmp \ - php5-iconv \ - php5-json \ - php5-mcrypt \ - php5-mssql \ - php5-mysql \ - php5-odbc \ - php5-openssl \ - php5-pdo \ - php5-pdo_dblib \ - php5-pdo_mysql \ - php5-pdo_odbc \ - php5-phar \ - php5-soap \ - php5-xmlreader \ - php5-xmlrpc \ - php5-zip \ + jq \ + php7-apache2 \ + php7-bcmath \ + php7-bz2 \ + php7-cli \ + php7-ctype \ + php7-curl \ + php7-dom \ + php7-gd \ + php7-gettext \ + php7-gmp \ + php7-iconv \ + php7-json \ + php7-mcrypt \ + php7-mysqli \ + php7-odbc \ + php7-openssl \ + php7-pdo \ + php7-pdo_dblib \ + php7-pdo_mysql \ + php7-pdo_odbc \ + php7-pecl-apcu \ + php7-pecl-memcached \ + php7-phar \ + php7-soap \ + php7-xmlreader \ + php7-xmlrpc \ + php7-zip \ re2c \ tar \ + unrar \ + unzip \ wget && \ echo "**** configure php and apache2 ****" && \ - ln -sf /usr/bin/php5 /usr/bin/php && \ + ln -sf /usr/bin/php7 /usr/bin/php && \ sed -i \ -e 's#User apache#User abc#g' \ -e 's#Group apache#Group abc#g' \ @@ -72,78 +55,17 @@ RUN \ -e 's/#LoadModule\ rewrite_module/LoadModule\ rewrite_module/' \ /etc/apache2/httpd.conf && \ sed -i 's#PidFile "/run/.*#Pidfile "/var/run/apache2/httpd.pid"#g' /etc/apache2/conf.d/mpm.conf && \ - echo "**** compile php modules ****" && \ - mkdir -p \ - /tmp/apcu-src && \ - curl -o \ - /tmp/apcu.tgz -L \ - "http://pecl.php.net/get/apcu-${APCU_VER}.tgz" && \ - tar xf \ - /tmp/apcu.tgz -C \ - /tmp/apcu-src --strip-components=1 && \ - cd /tmp/apcu-src && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=apcu.so" > /etc/php5/conf.d/apcu.ini && \ - mkdir -p \ - /tmp/memcache-src && \ - curl -o \ - /tmp/memcache.tgz -L \ - "http://pecl.php.net/get/memcache-${MEMCACHE_VER}.tgz" && \ - tar xf \ - /tmp/memcache.tgz -C \ - /tmp/memcache-src --strip-components=1 && \ - cd /tmp/memcache-src && \ - patch -p1 -i /tmp/patches/memcache-faulty-inline.patch && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=memcache.so" > /etc/php5/conf.d/memcache.ini && \ - mkdir -p \ - /tmp/xcache-src && \ - curl -o \ - /tmp/xcache.tar.gz -L \ - "http://xcache.lighttpd.net/pub/Releases/${XCACHE_VER}/xcache-${XCACHE_VER}.tar.gz" && \ - tar xf \ - /tmp/xcache.tar.gz -C \ - /tmp/xcache-src --strip-components=1 && \ - cd /tmp/xcache-src && \ - phpize5 --clean && \ - phpize5 && \ -./configure \ - --enable-xcache \ - --enable-xcache-constant \ - --enable-xcache-coverager \ - --enable-xcache-optimizer \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - install -Dm644 /tmp/patches/xcache.ini /etc/php5/conf.d/xcache.ini && \ echo "**** install projectsend ****" && \ rm /var/www/localhost/htdocs/index.html && \ - if [ -z ${PROJECTSEND_RELEASE+x} ]; then \ - PROJECTSEND_RELEASE=$(curl -sX GET "https://api.github.com/repos/projectsend/projectsend/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ curl -o \ - /tmp/ProjectSend.tar.gz -L \ - "https://github.com/projectsend/projectsend/archive/${PROJECTSEND_RELEASE}.tar.gz" && \ - tar -zxf \ - /tmp/ProjectSend.tar.gz --strip-components=1 -C /var/www/localhost/htdocs/ && \ + /tmp/ProjectSend.zip -L \ + "https://www.projectsend.org/download/310/" && \ + unzip \ + /tmp/ProjectSend.zip -d /var/www/localhost/htdocs/ && \ mv /var/www/localhost/htdocs/upload /defaults/ && \ mv /var/www/localhost/htdocs/img/custom /defaults/ && \ #cp /var/www/localhost/htdocs/includes/sys.config.sample.php /defaults/sys.config.php && \ echo "**** cleanup ****" && \ - apk del --purge \ - build-dependencies && \ rm -rf \ /tmp/* diff --git a/Dockerfile.aarch64 b/Dockerfile.aarch64 index 8042dc7..f927e7a 100644 --- a/Dockerfile.aarch64 +++ b/Dockerfile.aarch64 @@ -1,70 +1,53 @@ -FROM lsiobase/alpine:arm64v8-3.8 +FROM lsiobase/alpine:arm64v8-3.11 # set version label ARG BUILD_DATE ARG VERSION ARG PROJECTSEND_RELEASE LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" -LABEL maintainer="sparklyballs" - -# copy patches -COPY patches/ /tmp/patches/ - -# package versions -ARG APCU_VER="4.0.11" -ARG MEMCACHE_VER="3.0.8" -ARG XCACHE_VER="3.2.0" +LABEL maintainer="thelamer" RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache --virtual=build-dependencies \ - autoconf \ - automake \ - bison \ - file \ - flex \ - g++ \ - gawk \ - gcc \ - make \ - php5-dev \ - zlib-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ apache2 \ apache2-utils \ curl \ - php5-apache2 \ - php5-bcmath \ - php5-bz2 \ - php5-cli \ - php5-ctype \ - php5-curl \ - php5-dom \ - php5-gd \ - php5-gettext \ - php5-gmp \ - php5-iconv \ - php5-json \ - php5-mcrypt \ - php5-mssql \ - php5-mysql \ - php5-odbc \ - php5-openssl \ - php5-pdo \ - php5-pdo_dblib \ - php5-pdo_mysql \ - php5-pdo_odbc \ - php5-phar \ - php5-soap \ - php5-xmlreader \ - php5-xmlrpc \ - php5-zip \ + jq \ + php7-apache2 \ + php7-bcmath \ + php7-bz2 \ + php7-cli \ + php7-ctype \ + php7-curl \ + php7-dom \ + php7-gd \ + php7-gettext \ + php7-gmp \ + php7-iconv \ + php7-json \ + php7-mcrypt \ + php7-mysqli \ + php7-odbc \ + php7-openssl \ + php7-pdo \ + php7-pdo_dblib \ + php7-pdo_mysql \ + php7-pdo_odbc \ + php7-pecl-apcu \ + php7-pecl-memcached \ + php7-phar \ + php7-soap \ + php7-xmlreader \ + php7-xmlrpc \ + php7-zip \ re2c \ tar \ + unrar \ + unzip \ wget && \ echo "**** configure php and apache2 ****" && \ - ln -sf /usr/bin/php5 /usr/bin/php && \ + ln -sf /usr/bin/php7 /usr/bin/php && \ sed -i \ -e 's#User apache#User abc#g' \ -e 's#Group apache#Group abc#g' \ @@ -72,78 +55,17 @@ RUN \ -e 's/#LoadModule\ rewrite_module/LoadModule\ rewrite_module/' \ /etc/apache2/httpd.conf && \ sed -i 's#PidFile "/run/.*#Pidfile "/var/run/apache2/httpd.pid"#g' /etc/apache2/conf.d/mpm.conf && \ - echo "**** compile php modules ****" && \ - mkdir -p \ - /tmp/apcu-src && \ - curl -o \ - /tmp/apcu.tgz -L \ - "http://pecl.php.net/get/apcu-${APCU_VER}.tgz" && \ - tar xf \ - /tmp/apcu.tgz -C \ - /tmp/apcu-src --strip-components=1 && \ - cd /tmp/apcu-src && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=apcu.so" > /etc/php5/conf.d/apcu.ini && \ - mkdir -p \ - /tmp/memcache-src && \ - curl -o \ - /tmp/memcache.tgz -L \ - "http://pecl.php.net/get/memcache-${MEMCACHE_VER}.tgz" && \ - tar xf \ - /tmp/memcache.tgz -C \ - /tmp/memcache-src --strip-components=1 && \ - cd /tmp/memcache-src && \ - patch -p1 -i /tmp/patches/memcache-faulty-inline.patch && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=memcache.so" > /etc/php5/conf.d/memcache.ini && \ - mkdir -p \ - /tmp/xcache-src && \ - curl -o \ - /tmp/xcache.tar.gz -L \ - "http://xcache.lighttpd.net/pub/Releases/${XCACHE_VER}/xcache-${XCACHE_VER}.tar.gz" && \ - tar xf \ - /tmp/xcache.tar.gz -C \ - /tmp/xcache-src --strip-components=1 && \ - cd /tmp/xcache-src && \ - phpize5 --clean && \ - phpize5 && \ -./configure \ - --enable-xcache \ - --enable-xcache-constant \ - --enable-xcache-coverager \ - --enable-xcache-optimizer \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - install -Dm644 /tmp/patches/xcache.ini /etc/php5/conf.d/xcache.ini && \ echo "**** install projectsend ****" && \ rm /var/www/localhost/htdocs/index.html && \ - if [ -z ${PROJECTSEND_RELEASE+x} ]; then \ - PROJECTSEND_RELEASE=$(curl -sX GET "https://api.github.com/repos/projectsend/projectsend/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ curl -o \ - /tmp/ProjectSend.tar.gz -L \ - "https://github.com/projectsend/projectsend/archive/${PROJECTSEND_RELEASE}.tar.gz" && \ - tar -zxf \ - /tmp/ProjectSend.tar.gz --strip-components=1 -C /var/www/localhost/htdocs/ && \ + /tmp/ProjectSend.zip -L \ + "https://www.projectsend.org/download/310/" && \ + unzip \ + /tmp/ProjectSend.zip -d /var/www/localhost/htdocs/ && \ mv /var/www/localhost/htdocs/upload /defaults/ && \ mv /var/www/localhost/htdocs/img/custom /defaults/ && \ #cp /var/www/localhost/htdocs/includes/sys.config.sample.php /defaults/sys.config.php && \ echo "**** cleanup ****" && \ - apk del --purge \ - build-dependencies && \ rm -rf \ /tmp/* diff --git a/Dockerfile.armhf b/Dockerfile.armhf index 5306d59..9368117 100644 --- a/Dockerfile.armhf +++ b/Dockerfile.armhf @@ -1,70 +1,53 @@ -FROM lsiobase/alpine:arm32v7-3.8 +FROM lsiobase/alpine:arm32v7-3.11 # set version label ARG BUILD_DATE ARG VERSION ARG PROJECTSEND_RELEASE LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}" -LABEL maintainer="sparklyballs" - -# copy patches -COPY patches/ /tmp/patches/ - -# package versions -ARG APCU_VER="4.0.11" -ARG MEMCACHE_VER="3.0.8" -ARG XCACHE_VER="3.2.0" +LABEL maintainer="thelamer" RUN \ - echo "**** install build packages ****" && \ - apk add --no-cache --virtual=build-dependencies \ - autoconf \ - automake \ - bison \ - file \ - flex \ - g++ \ - gawk \ - gcc \ - make \ - php5-dev \ - zlib-dev && \ echo "**** install runtime packages ****" && \ apk add --no-cache \ apache2 \ apache2-utils \ curl \ - php5-apache2 \ - php5-bcmath \ - php5-bz2 \ - php5-cli \ - php5-ctype \ - php5-curl \ - php5-dom \ - php5-gd \ - php5-gettext \ - php5-gmp \ - php5-iconv \ - php5-json \ - php5-mcrypt \ - php5-mssql \ - php5-mysql \ - php5-odbc \ - php5-openssl \ - php5-pdo \ - php5-pdo_dblib \ - php5-pdo_mysql \ - php5-pdo_odbc \ - php5-phar \ - php5-soap \ - php5-xmlreader \ - php5-xmlrpc \ - php5-zip \ + jq \ + php7-apache2 \ + php7-bcmath \ + php7-bz2 \ + php7-cli \ + php7-ctype \ + php7-curl \ + php7-dom \ + php7-gd \ + php7-gettext \ + php7-gmp \ + php7-iconv \ + php7-json \ + php7-mcrypt \ + php7-mysqli \ + php7-odbc \ + php7-openssl \ + php7-pdo \ + php7-pdo_dblib \ + php7-pdo_mysql \ + php7-pdo_odbc \ + php7-pecl-apcu \ + php7-pecl-memcached \ + php7-phar \ + php7-soap \ + php7-xmlreader \ + php7-xmlrpc \ + php7-zip \ re2c \ tar \ + unrar \ + unzip \ wget && \ echo "**** configure php and apache2 ****" && \ - ln -sf /usr/bin/php5 /usr/bin/php && \ + ln -sf /usr/bin/php7 /usr/bin/php && \ sed -i \ -e 's#User apache#User abc#g' \ -e 's#Group apache#Group abc#g' \ @@ -72,78 +55,17 @@ RUN \ -e 's/#LoadModule\ rewrite_module/LoadModule\ rewrite_module/' \ /etc/apache2/httpd.conf && \ sed -i 's#PidFile "/run/.*#Pidfile "/var/run/apache2/httpd.pid"#g' /etc/apache2/conf.d/mpm.conf && \ - echo "**** compile php modules ****" && \ - mkdir -p \ - /tmp/apcu-src && \ - curl -o \ - /tmp/apcu.tgz -L \ - "http://pecl.php.net/get/apcu-${APCU_VER}.tgz" && \ - tar xf \ - /tmp/apcu.tgz -C \ - /tmp/apcu-src --strip-components=1 && \ - cd /tmp/apcu-src && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=apcu.so" > /etc/php5/conf.d/apcu.ini && \ - mkdir -p \ - /tmp/memcache-src && \ - curl -o \ - /tmp/memcache.tgz -L \ - "http://pecl.php.net/get/memcache-${MEMCACHE_VER}.tgz" && \ - tar xf \ - /tmp/memcache.tgz -C \ - /tmp/memcache-src --strip-components=1 && \ - cd /tmp/memcache-src && \ - patch -p1 -i /tmp/patches/memcache-faulty-inline.patch && \ - phpize5 && \ - ./configure \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - echo "extension=memcache.so" > /etc/php5/conf.d/memcache.ini && \ - mkdir -p \ - /tmp/xcache-src && \ - curl -o \ - /tmp/xcache.tar.gz -L \ - "http://xcache.lighttpd.net/pub/Releases/${XCACHE_VER}/xcache-${XCACHE_VER}.tar.gz" && \ - tar xf \ - /tmp/xcache.tar.gz -C \ - /tmp/xcache-src --strip-components=1 && \ - cd /tmp/xcache-src && \ - phpize5 --clean && \ - phpize5 && \ -./configure \ - --enable-xcache \ - --enable-xcache-constant \ - --enable-xcache-coverager \ - --enable-xcache-optimizer \ - --prefix=/usr \ - --with-php-config=/usr/bin/php-config5 && \ - make && \ - make install && \ - install -Dm644 /tmp/patches/xcache.ini /etc/php5/conf.d/xcache.ini && \ echo "**** install projectsend ****" && \ rm /var/www/localhost/htdocs/index.html && \ - if [ -z ${PROJECTSEND_RELEASE+x} ]; then \ - PROJECTSEND_RELEASE=$(curl -sX GET "https://api.github.com/repos/projectsend/projectsend/releases/latest" \ - | awk '/tag_name/{print $4;exit}' FS='[""]'); \ - fi && \ curl -o \ - /tmp/ProjectSend.tar.gz -L \ - "https://github.com/projectsend/projectsend/archive/${PROJECTSEND_RELEASE}.tar.gz" && \ - tar -zxf \ - /tmp/ProjectSend.tar.gz --strip-components=1 -C /var/www/localhost/htdocs/ && \ + /tmp/ProjectSend.zip -L \ + "https://www.projectsend.org/download/310/" && \ + unzip \ + /tmp/ProjectSend.zip -d /var/www/localhost/htdocs/ && \ mv /var/www/localhost/htdocs/upload /defaults/ && \ mv /var/www/localhost/htdocs/img/custom /defaults/ && \ #cp /var/www/localhost/htdocs/includes/sys.config.sample.php /defaults/sys.config.php && \ echo "**** cleanup ****" && \ - apk del --purge \ - build-dependencies && \ rm -rf \ /tmp/* diff --git a/Jenkinsfile b/Jenkinsfile index cd99bbf..f26024b 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -101,23 +101,16 @@ pipeline { /* ######################## External Release Tagging ######################## */ - // If this is a stable github release use the latest endpoint from github to determine the ext tag - stage("Set ENV github_stable"){ - steps{ - script{ - env.EXT_RELEASE = sh( - script: '''curl -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq -r '. | .tag_name' ''', - returnStdout: true).trim() - } - } - } - // If this is a stable or devel github release generate the link for the build message - stage("Set ENV github_link"){ - steps{ - script{ - env.RELEASE_LINK = 'https://github.com/' + env.EXT_USER + '/' + env.EXT_REPO + '/releases/tag/' + env.EXT_RELEASE - } - } + // If this is a custom command to determine version use that command + stage("Set tag custom bash"){ + steps{ + script{ + env.EXT_RELEASE = sh( + script: ''' echo r1070 ''', + returnStdout: true).trim() + env.RELEASE_LINK = 'custom_command' + } + } } // Sanitize the release tag and strip illegal docker or github characters stage("Sanitize tag"){ @@ -681,11 +674,11 @@ pipeline { "tagger": {"name": "LinuxServer Jenkins","email": "jenkins@linuxserver.io","date": "'${GITHUB_DATE}'"}}' ''' echo "Pushing New release for Tag" sh '''#! /bin/bash - curl -s https://api.github.com/repos/${EXT_USER}/${EXT_REPO}/releases/latest | jq '. |.body' | sed 's:^.\\(.*\\).$:\\1:' > releasebody.json + echo "Updating to ${EXT_RELEASE_CLEAN}" > releasebody.json echo '{"tag_name":"'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\ "target_commitish": "master",\ "name": "'${EXT_RELEASE_CLEAN}'-ls'${LS_TAG_NUMBER}'",\ - "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**'${EXT_REPO}' Changes:**\\n\\n' > start + "body": "**LinuxServer Changes:**\\n\\n'${LS_RELEASE_NOTES}'\\n**Remote Changes:**\\n\\n' > start printf '","draft": false,"prerelease": false}' >> releasebody.json paste -d'\\0' start releasebody.json > releasebody.json.done curl -H "Authorization: token ${GITHUB_TOKEN}" -X POST https://api.github.com/repos/${LS_USER}/${LS_REPO}/releases -d @releasebody.json.done''' diff --git a/README.md b/README.md index e5c8564..5012c1f 100644 --- a/README.md +++ b/README.md @@ -143,9 +143,9 @@ In this instance `PUID=1000` and `PGID=1000`, to find yours use `id user` as bel   ## Application Setup -Requires a user and database in either mssql, mysql or mariadb. +*IMPORTANT* This image no longer supports MSSQL since being migrated to PHP7, if you want MSSQL support please use the tag `linuxserver/projectsend:r1053-ls27` -On first run go to `/install/make-config.php` and enter your database details. +Requires a user and database in either mysql or mariadb. More info at [ProjectSend](http://www.projectsend.org). @@ -215,6 +215,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64 ## Versions +* **31.12.19:** - Rebase to Alpine 3.11 and upgrade to PHP7. * **23.03.19:** - Switching to new Base images, shift to arm32v7 tag. * **11.02.19:** - Add pipeline logic and multi arch. * **11.06.17:** - Fetch version from github. diff --git a/jenkins-vars.yml b/jenkins-vars.yml index 77f4617..18c4165 100644 --- a/jenkins-vars.yml +++ b/jenkins-vars.yml @@ -2,8 +2,9 @@ # jenkins variables project_name: docker-projectsend -external_type: github_stable +external_type: na release_type: stable +custom_version_command: "echo r1070" release_tag: latest ls_branch: master repo_vars: diff --git a/patches/memcache-faulty-inline.patch b/patches/memcache-faulty-inline.patch deleted file mode 100644 index b260d02..0000000 --- a/patches/memcache-faulty-inline.patch +++ /dev/null @@ -1,141 +0,0 @@ -diff -ru a/memcache_pool.c b/memcache_pool.c ---- a/memcache_pool.c -+++ b/memcache_pool.c -@@ -40,7 +40,7 @@ - - ZEND_DECLARE_MODULE_GLOBALS(memcache) - --inline void mmc_buffer_alloc(mmc_buffer_t *buffer, unsigned int size) /* -+void mmc_buffer_alloc(mmc_buffer_t *buffer, unsigned int size) /* - ensures space for an additional size bytes {{{ */ - { - register size_t newlen; -@@ -48,7 +48,7 @@ - } - /* }}} */ - --inline void mmc_buffer_free(mmc_buffer_t *buffer) /* {{{ */ -+void mmc_buffer_free(mmc_buffer_t *buffer) /* {{{ */ - { - if (buffer->value.c != NULL) { - smart_str_free(&(buffer->value)); -@@ -1677,7 +1677,7 @@ - } - /* }}} */ - --inline int mmc_prepare_key_ex(const char *key, unsigned int key_len, char *result, unsigned int *result_len) /* {{{ */ -+int mmc_prepare_key_ex(const char *key, unsigned int key_len, char *result, unsigned int *result_len) /* {{{ */ - { - unsigned int i; - if (key_len == 0) { -@@ -1695,7 +1695,7 @@ - } - /* }}} */ - --inline int mmc_prepare_key(zval *key, char *result, unsigned int *result_len) /* {{{ */ -+int mmc_prepare_key(zval *key, char *result, unsigned int *result_len) /* {{{ */ - { - if (Z_TYPE_P(key) == IS_STRING) { - return mmc_prepare_key_ex(Z_STRVAL_P(key), Z_STRLEN_P(key), result, result_len); -diff -ru a/memcache_pool.h b/memcache_pool.h ---- a/memcache_pool.h -+++ b/memcache_pool.h -@@ -129,8 +129,8 @@ - #define mmc_buffer_release(b) memset((b), 0, sizeof(*(b))) - #define mmc_buffer_reset(b) (b)->value.len = (b)->idx = 0 - --inline void mmc_buffer_alloc(mmc_buffer_t *, unsigned int); --inline void mmc_buffer_free(mmc_buffer_t *); -+void mmc_buffer_alloc(mmc_buffer_t *, unsigned int); -+void mmc_buffer_free(mmc_buffer_t *); - - /* stream handlers */ - typedef struct mmc_stream mmc_stream_t; -@@ -385,8 +385,8 @@ - double timeval_to_double(struct timeval tv); - struct timeval double_to_timeval(double sec); - --inline int mmc_prepare_key_ex(const char *, unsigned int, char *, unsigned int *); --inline int mmc_prepare_key(zval *, char *, unsigned int *); -+int mmc_prepare_key_ex(const char *, unsigned int, char *, unsigned int *); -+int mmc_prepare_key(zval *, char *, unsigned int *); - - #define mmc_str_left(h, n, hlen, nlen) ((hlen) >= (nlen) ? memcmp((h), (n), (nlen)) == 0 : 0) - -diff -ru a/memcache_queue.c b/memcache_queue.c ---- a/memcache_queue.c -+++ b/memcache_queue.c -@@ -26,7 +26,7 @@ - #include "php.h" - #include "memcache_queue.h" - --MMC_QUEUE_INLINE void mmc_queue_push(mmc_queue_t *queue, void *ptr) { -+void mmc_queue_push(mmc_queue_t *queue, void *ptr) { - if (mmc_queue_contains(queue, ptr)) return; - - if (queue->len >= queue->alloc) { -@@ -53,7 +53,7 @@ - queue->len++; - } - --MMC_QUEUE_INLINE void *mmc_queue_pop(mmc_queue_t *queue) { -+void *mmc_queue_pop(mmc_queue_t *queue) { - if (queue->len) { - void *ptr; - -@@ -73,7 +73,7 @@ - return NULL; - } - --MMC_QUEUE_INLINE int mmc_queue_contains(mmc_queue_t *queue, void *ptr) { -+int mmc_queue_contains(mmc_queue_t *queue, void *ptr) { - if (queue != NULL) { - int i; - -@@ -87,14 +87,14 @@ - return 0; - } - --MMC_QUEUE_INLINE void mmc_queue_free(mmc_queue_t *queue) { -+void mmc_queue_free(mmc_queue_t *queue) { - if (queue->items != NULL) { - efree(queue->items); - } - memset(queue, 0, sizeof(*queue)); - } - --MMC_QUEUE_INLINE void mmc_queue_copy(mmc_queue_t *target, mmc_queue_t *source) { -+void mmc_queue_copy(mmc_queue_t *target, mmc_queue_t *source) { - if (target->alloc != source->alloc) { - target->alloc = source->alloc; - target->items = erealloc(target->items, sizeof(*target->items) * target->alloc); -@@ -106,7 +106,7 @@ - target->len = source->len; - } - --MMC_QUEUE_INLINE void mmc_queue_remove(mmc_queue_t *queue, void *ptr) { -+void mmc_queue_remove(mmc_queue_t *queue, void *ptr) { - void *item; - mmc_queue_t original = *queue; - mmc_queue_release(queue); -diff -ru a/memcache_queue.h b/memcache_queue.h ---- a/memcache_queue.h -+++ b/memcache_queue.h -@@ -43,12 +43,12 @@ - #define MMC_QUEUE_INLINE inline - #endif - --MMC_QUEUE_INLINE void mmc_queue_push(mmc_queue_t *, void *); --MMC_QUEUE_INLINE void *mmc_queue_pop(mmc_queue_t *); --MMC_QUEUE_INLINE int mmc_queue_contains(mmc_queue_t *, void *); --MMC_QUEUE_INLINE void mmc_queue_free(mmc_queue_t *); --MMC_QUEUE_INLINE void mmc_queue_copy(mmc_queue_t *, mmc_queue_t *); --MMC_QUEUE_INLINE void mmc_queue_remove(mmc_queue_t *, void *); -+extern void mmc_queue_push(mmc_queue_t *, void *); -+extern void *mmc_queue_pop(mmc_queue_t *); -+extern int mmc_queue_contains(mmc_queue_t *, void *); -+extern void mmc_queue_free(mmc_queue_t *); -+extern void mmc_queue_copy(mmc_queue_t *, mmc_queue_t *); -+extern void mmc_queue_remove(mmc_queue_t *, void *); - - #endif /*MEMCACHE_QUEUE_H_*/ diff --git a/patches/xcache.ini b/patches/xcache.ini deleted file mode 100644 index b814dbc..0000000 --- a/patches/xcache.ini +++ /dev/null @@ -1,3 +0,0 @@ -;extension=xcache.so -xcache.size=64M -xcache.var_size=64M diff --git a/readme-vars.yml b/readme-vars.yml index c47a334..1930be1 100644 --- a/readme-vars.yml +++ b/readme-vars.yml @@ -46,14 +46,15 @@ optional_block_1: false # application setup block app_setup_block_enabled: true app_setup_block: | - Requires a user and database in either mssql, mysql or mariadb. - - On first run go to `/install/make-config.php` and enter your database details. + *IMPORTANT* This image no longer supports MSSQL since being migrated to PHP7, if you want MSSQL support please use the tag `linuxserver/projectsend:r1053-ls27` + + Requires a user and database in either mysql or mariadb. More info at [ProjectSend]({{ project_url }}). # changelog changelogs: + - { date: "31.12.19:", desc: "Rebase to Alpine 3.11 and upgrade to PHP7." } - { date: "23.03.19:", desc: "Switching to new Base images, shift to arm32v7 tag." } - { date: "11.02.19:", desc: "Add pipeline logic and multi arch." } - { date: "11.06.17:", desc: "Fetch version from github." } diff --git a/root/etc/cont-init.d/30-config b/root/etc/cont-init.d/30-config index 615fd7c..12cda06 100644 --- a/root/etc/cont-init.d/30-config +++ b/root/etc/cont-init.d/30-config @@ -19,7 +19,7 @@ sed -i \ -e "s#;*max_file_uploads =.*#max_file_uploads = ${PHP_MAX_FILE_UPLOAD}#i" \ -e "s#;*post_max_size =.*#post_max_size = ${USABLE_MAX_UPLOAD}M#i" \ -e "s#;*cgi.fix_pathinfo=.*#cgi.fix_pathinfo= 0#i" \ - /etc/php5/php.ini + /etc/php7/php.ini # copy config PREV_DIR=$(pwd)