From d2969c59eaf9d6a38091e8563b921191e4e9532b Mon Sep 17 00:00:00 2001
From: Wonderfall <wonderfall@schrodinger.io>
Date: Mon, 19 Sep 2016 12:59:09 +0200
Subject: [PATCH] nextcloud: add UPLOAD_MAX_SIZE variable

---
 nextcloud/10.0/Dockerfile    | 3 ++-
 nextcloud/10.0/nginx.conf    | 2 +-
 nextcloud/10.0/php-fpm.conf  | 4 ++--
 nextcloud/10.0/run.sh        | 2 ++
 nextcloud/9.0/Dockerfile     | 3 ++-
 nextcloud/9.0/nginx.conf     | 2 +-
 nextcloud/9.0/php-fpm.conf   | 4 ++--
 nextcloud/9.0/run.sh         | 2 ++
 nextcloud/README.md          | 1 +
 nextcloud/daily/Dockerfile   | 3 ++-
 nextcloud/daily/nginx.conf   | 2 +-
 nextcloud/daily/php-fpm.conf | 4 ++--
 nextcloud/daily/run.sh       | 2 ++
 13 files changed, 22 insertions(+), 12 deletions(-)

diff --git a/nextcloud/10.0/Dockerfile b/nextcloud/10.0/Dockerfile
index 9d5a747..0e74d1b 100644
--- a/nextcloud/10.0/Dockerfile
+++ b/nextcloud/10.0/Dockerfile
@@ -4,7 +4,8 @@ MAINTAINER Wonderfall <wonderfall@schrodinger.io>
 ARG NEXTCLOUD_VERSION=10.0.0
 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372  792E D758 99B9 A724 937A"
 
-ENV UID=991 GID=991
+ENV UID=991 GID=991 \
+    UPLOAD_MAX_SIZE=10G
 
 RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \
  && echo "@testing https://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
diff --git a/nextcloud/10.0/nginx.conf b/nextcloud/10.0/nginx.conf
index b764cf5..1cf16db 100644
--- a/nextcloud/10.0/nginx.conf
+++ b/nextcloud/10.0/nginx.conf
@@ -35,7 +35,7 @@ http {
         index index.php;
         root /nextcloud;
         
-        client_max_body_size 10G;
+        client_max_body_size <UPLOAD_MAX_SIZE>;
         fastcgi_buffers 64 4K;
 
         error_page 403 /core/templates/403.php;
diff --git a/nextcloud/10.0/php-fpm.conf b/nextcloud/10.0/php-fpm.conf
index 0797af3..a485470 100644
--- a/nextcloud/10.0/php-fpm.conf
+++ b/nextcloud/10.0/php-fpm.conf
@@ -11,8 +11,8 @@ pm.max_spare_servers = 3
 chdir = /
 request_terminate_timeout = 1200
 env[PATH] = /usr/local/bin:/usr/bin:/bin
-php_admin_value[post_max_size] = 10G
-php_admin_value[upload_max_filesize] = 10G
+php_admin_value[post_max_size] = <UPLOAD_MAX_SIZE>
+php_admin_value[upload_max_filesize] = <UPLOAD_MAX_SIZE>
 php_admin_value[max_execution_time] = 10800
 php_admin_value[max_input_time] = 1200
 
diff --git a/nextcloud/10.0/run.sh b/nextcloud/10.0/run.sh
index 1aa007f..8778e29 100644
--- a/nextcloud/10.0/run.sh
+++ b/nextcloud/10.0/run.sh
@@ -4,6 +4,8 @@ if [ ! -f /config/config.php ]; then
     echo -e "<?php\n\$CONFIG = array (\n  'datadirectory' => '/data',\n);" > /config/config.php
 fi
 
+sed -i -e "s/<UPLOAD_MAX_SIZE>/$UPLOAD_MAX_SIZE/g" /etc/nginx/nginx.conf /etc/php7/php-fpm.conf
+
 chown -R $UID:$GID /nextcloud /data /config /apps2 /etc/nginx /etc/php7 /var/log /var/lib/nginx /tmp /etc/s6.d
 ln -s /config/config.php /nextcloud/config/config.php
 ln -s /apps2 /nextcloud
diff --git a/nextcloud/9.0/Dockerfile b/nextcloud/9.0/Dockerfile
index 578b4af..11308e2 100644
--- a/nextcloud/9.0/Dockerfile
+++ b/nextcloud/9.0/Dockerfile
@@ -4,7 +4,8 @@ MAINTAINER Wonderfall <wonderfall@schrodinger.io>
 ARG NEXTCLOUD_VERSION=9.0.53
 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372  792E D758 99B9 A724 937A"
 
-ENV UID=991 GID=991
+ENV UID=991 GID=991 \
+    UPLOAD_MAX_SIZE=10G
 
 RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \
  && echo "@testing https://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
diff --git a/nextcloud/9.0/nginx.conf b/nextcloud/9.0/nginx.conf
index b764cf5..1cf16db 100644
--- a/nextcloud/9.0/nginx.conf
+++ b/nextcloud/9.0/nginx.conf
@@ -35,7 +35,7 @@ http {
         index index.php;
         root /nextcloud;
         
-        client_max_body_size 10G;
+        client_max_body_size <UPLOAD_MAX_SIZE>;
         fastcgi_buffers 64 4K;
 
         error_page 403 /core/templates/403.php;
diff --git a/nextcloud/9.0/php-fpm.conf b/nextcloud/9.0/php-fpm.conf
index 0797af3..a485470 100644
--- a/nextcloud/9.0/php-fpm.conf
+++ b/nextcloud/9.0/php-fpm.conf
@@ -11,8 +11,8 @@ pm.max_spare_servers = 3
 chdir = /
 request_terminate_timeout = 1200
 env[PATH] = /usr/local/bin:/usr/bin:/bin
-php_admin_value[post_max_size] = 10G
-php_admin_value[upload_max_filesize] = 10G
+php_admin_value[post_max_size] = <UPLOAD_MAX_SIZE>
+php_admin_value[upload_max_filesize] = <UPLOAD_MAX_SIZE>
 php_admin_value[max_execution_time] = 10800
 php_admin_value[max_input_time] = 1200
 
diff --git a/nextcloud/9.0/run.sh b/nextcloud/9.0/run.sh
index 1aa007f..8778e29 100644
--- a/nextcloud/9.0/run.sh
+++ b/nextcloud/9.0/run.sh
@@ -4,6 +4,8 @@ if [ ! -f /config/config.php ]; then
     echo -e "<?php\n\$CONFIG = array (\n  'datadirectory' => '/data',\n);" > /config/config.php
 fi
 
+sed -i -e "s/<UPLOAD_MAX_SIZE>/$UPLOAD_MAX_SIZE/g" /etc/nginx/nginx.conf /etc/php7/php-fpm.conf
+
 chown -R $UID:$GID /nextcloud /data /config /apps2 /etc/nginx /etc/php7 /var/log /var/lib/nginx /tmp /etc/s6.d
 ln -s /config/config.php /nextcloud/config/config.php
 ln -s /apps2 /nextcloud
diff --git a/nextcloud/README.md b/nextcloud/README.md
index d0a6df8..25dfa5a 100644
--- a/nextcloud/README.md
+++ b/nextcloud/README.md
@@ -28,6 +28,7 @@
 #### Environment variables
 - **UID** : nextcloud user id *(default : 991)*
 - **GID** : nextcloud group id *(default : 991)*
+- **UPLOAD_MAX_SIZE** : maximum upload size *(default : 10G)*
 
 #### Port
 - **8888** (recently changed, nginx now runs without root)
diff --git a/nextcloud/daily/Dockerfile b/nextcloud/daily/Dockerfile
index 9a5401e..0ddcf20 100644
--- a/nextcloud/daily/Dockerfile
+++ b/nextcloud/daily/Dockerfile
@@ -1,7 +1,8 @@
 FROM alpine:3.4
 MAINTAINER Wonderfall <wonderfall@schrodinger.io>
 
-ENV UID=991 GID=991
+ENV UID=991 GID=991 \
+    UPLOAD_MAX_SIZE=10G
 
 RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \
  && echo "@testing https://nl.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories \
diff --git a/nextcloud/daily/nginx.conf b/nextcloud/daily/nginx.conf
index b764cf5..1cf16db 100644
--- a/nextcloud/daily/nginx.conf
+++ b/nextcloud/daily/nginx.conf
@@ -35,7 +35,7 @@ http {
         index index.php;
         root /nextcloud;
         
-        client_max_body_size 10G;
+        client_max_body_size <UPLOAD_MAX_SIZE>;
         fastcgi_buffers 64 4K;
 
         error_page 403 /core/templates/403.php;
diff --git a/nextcloud/daily/php-fpm.conf b/nextcloud/daily/php-fpm.conf
index 0797af3..a485470 100644
--- a/nextcloud/daily/php-fpm.conf
+++ b/nextcloud/daily/php-fpm.conf
@@ -11,8 +11,8 @@ pm.max_spare_servers = 3
 chdir = /
 request_terminate_timeout = 1200
 env[PATH] = /usr/local/bin:/usr/bin:/bin
-php_admin_value[post_max_size] = 10G
-php_admin_value[upload_max_filesize] = 10G
+php_admin_value[post_max_size] = <UPLOAD_MAX_SIZE>
+php_admin_value[upload_max_filesize] = <UPLOAD_MAX_SIZE>
 php_admin_value[max_execution_time] = 10800
 php_admin_value[max_input_time] = 1200
 
diff --git a/nextcloud/daily/run.sh b/nextcloud/daily/run.sh
index 1aa007f..8778e29 100644
--- a/nextcloud/daily/run.sh
+++ b/nextcloud/daily/run.sh
@@ -4,6 +4,8 @@ if [ ! -f /config/config.php ]; then
     echo -e "<?php\n\$CONFIG = array (\n  'datadirectory' => '/data',\n);" > /config/config.php
 fi
 
+sed -i -e "s/<UPLOAD_MAX_SIZE>/$UPLOAD_MAX_SIZE/g" /etc/nginx/nginx.conf /etc/php7/php-fpm.conf
+
 chown -R $UID:$GID /nextcloud /data /config /apps2 /etc/nginx /etc/php7 /var/log /var/lib/nginx /tmp /etc/s6.d
 ln -s /config/config.php /nextcloud/config/config.php
 ln -s /apps2 /nextcloud