feat(): add UPLOAD_MAX_SIZE variable
This commit is contained in:
		
							
								
								
									
										15
									
								
								Dockerfile
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								Dockerfile
									
									
									
									
									
								
							@@ -5,7 +5,7 @@ LABEL description "Rainloop is a simple, modern & fast web-based client" \
 | 
			
		||||
 | 
			
		||||
ARG GPG_FINGERPRINT="3B79 7ECE 694F 3B7B 70F3  11A4 ED7C 49D9 87DA 4591"
 | 
			
		||||
 | 
			
		||||
ENV UID=991 GID=991
 | 
			
		||||
ENV UID=991 GID=991 UPLOAD_MAX_SIZE=25M
 | 
			
		||||
 | 
			
		||||
RUN echo "@community https://nl.alpinelinux.org/alpine/v3.6/community" >> /etc/apk/repositories \
 | 
			
		||||
 && apk -U upgrade \
 | 
			
		||||
@@ -35,28 +35,19 @@ RUN echo "@community https://nl.alpinelinux.org/alpine/v3.6/community" >> /etc/a
 | 
			
		||||
 && wget -q https://www.rainloop.net/repository/webmail/rainloop-community-latest.zip \
 | 
			
		||||
 && wget -q https://www.rainloop.net/repository/webmail/rainloop-community-latest.zip.asc \
 | 
			
		||||
 && wget -q https://www.rainloop.net/repository/RainLoop.asc \
 | 
			
		||||
 && echo "Verifying authenticity of rainloop-community-latest.zip using GPG..." \
 | 
			
		||||
 && gpg --import RainLoop.asc \
 | 
			
		||||
 && FINGERPRINT="$(LANG=C gpg --verify rainloop-community-latest.zip.asc rainloop-community-latest.zip 2>&1 \
 | 
			
		||||
  | sed -n "s#Primary key fingerprint: \(.*\)#\1#p")" \
 | 
			
		||||
 && if [ -z "${FINGERPRINT}" ]; then echo "Warning! Invalid GPG signature!" && exit 1; fi \
 | 
			
		||||
 && if [ "${FINGERPRINT}" != "${GPG_FINGERPRINT}" ]; then echo "Warning! Wrong GPG fingerprint!" && exit 1; fi \
 | 
			
		||||
 && echo "All seems good, now unzipping rainloop-community-latest.zip..." \
 | 
			
		||||
 && mkdir /rainloop && unzip -q /tmp/rainloop-community-latest.zip -d /rainloop \
 | 
			
		||||
 && find /rainloop -type d -exec chmod 755 {} \; \
 | 
			
		||||
 && find /rainloop -type f -exec chmod 644 {} \; \
 | 
			
		||||
 && apk del build-dependencies \
 | 
			
		||||
 && rm -rf /tmp/* /var/cache/apk/* /root/.gnupg
 | 
			
		||||
 | 
			
		||||
COPY nginx.conf /etc/nginx/nginx.conf
 | 
			
		||||
COPY php-fpm.conf /etc/php7/php-fpm.conf
 | 
			
		||||
COPY s6.d /etc/s6.d
 | 
			
		||||
COPY run.sh /usr/local/bin/run.sh
 | 
			
		||||
 | 
			
		||||
RUN chmod +x /usr/local/bin/run.sh /etc/s6.d/*/* /etc/s6.d/.s6-svscan/*
 | 
			
		||||
 | 
			
		||||
COPY rootfs /
 | 
			
		||||
RUN chmod +x /usr/local/bin/run.sh /services/*/run /services/.s6-svscan/*
 | 
			
		||||
VOLUME /rainloop/data
 | 
			
		||||
 | 
			
		||||
EXPOSE 8888
 | 
			
		||||
 | 
			
		||||
CMD ["run.sh"]
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										38
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										38
									
								
								README.md
									
									
									
									
									
								
							@@ -28,43 +28,23 @@ Rainloop is a simple, modern & fast web-based client. More details on the [offic
 | 
			
		||||
| -------- | ----------- | ---- | ------------- |
 | 
			
		||||
| **UID** | rainloop user id | *optional* | 991
 | 
			
		||||
| **GID** | rainloop group id | *optional* | 991
 | 
			
		||||
| **UPLOAD_MAX_SIZE** | Attachment size limit | *optional* | 25M
 | 
			
		||||
 | 
			
		||||
### Reverse proxy example with nginx
 | 
			
		||||
### Docker-compose.yml
 | 
			
		||||
 | 
			
		||||
https://github.com/hardware/mailserver/wiki/Reverse-proxy-configuration
 | 
			
		||||
```yml
 | 
			
		||||
# Full example :
 | 
			
		||||
# https://github.com/hardware/mailserver/blob/master/docker-compose.sample.yml
 | 
			
		||||
 | 
			
		||||
### Initial configuration
 | 
			
		||||
 | 
			
		||||
https://github.com/hardware/mailserver/wiki/Rainloop-initial-configuration
 | 
			
		||||
 | 
			
		||||
### Docker-compose
 | 
			
		||||
 | 
			
		||||
#### Docker-compose.yml
 | 
			
		||||
```
 | 
			
		||||
rainloop:
 | 
			
		||||
  image: hardware/rainloop
 | 
			
		||||
  container_name: rainloop
 | 
			
		||||
  links:
 | 
			
		||||
    - mariadb:mariadb
 | 
			
		||||
  volumes:
 | 
			
		||||
    - /mnt/docker/rainloop:/rainloop/data
 | 
			
		||||
 | 
			
		||||
# if using mariadb as contacts database :
 | 
			
		||||
 | 
			
		||||
mariadb:
 | 
			
		||||
  image: mariadb:10.1
 | 
			
		||||
  container_name: mariadb
 | 
			
		||||
  volumes:
 | 
			
		||||
    - /mnt/docker/mysql/db:/var/lib/mysql
 | 
			
		||||
  environment:
 | 
			
		||||
    - MYSQL_ROOT_PASSWORD=xxxxxxx
 | 
			
		||||
    - MYSQL_DATABASE=rainloop
 | 
			
		||||
    - MYSQL_USER=rainloop
 | 
			
		||||
    - MYSQL_PASSWORD=xxxxxxx
 | 
			
		||||
  depends_on:
 | 
			
		||||
    - mailserver
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
#### Run !
 | 
			
		||||
#### How to setup
 | 
			
		||||
 | 
			
		||||
```
 | 
			
		||||
docker-compose up -d
 | 
			
		||||
```
 | 
			
		||||
https://github.com/hardware/mailserver/wiki/Rainloop-initial-configuration
 | 
			
		||||
 
 | 
			
		||||
@@ -56,7 +56,7 @@ http {
 | 
			
		||||
    root /rainloop;
 | 
			
		||||
    index index.php;
 | 
			
		||||
    charset utf-8;
 | 
			
		||||
    client_max_body_size 50M;
 | 
			
		||||
    client_max_body_size <UPLOAD_MAX_SIZE>;
 | 
			
		||||
 | 
			
		||||
    location ^~ /data {
 | 
			
		||||
      deny all;
 | 
			
		||||
@@ -10,5 +10,5 @@ pm.min_spare_servers = 1
 | 
			
		||||
pm.max_spare_servers = 3
 | 
			
		||||
chdir = /
 | 
			
		||||
php_admin_value[expose_php] = Off
 | 
			
		||||
php_admin_value[post_max_size] = 50M
 | 
			
		||||
php_admin_value[upload_max_filesize] = 50M
 | 
			
		||||
php_admin_value[post_max_size] = <UPLOAD_MAX_SIZE>
 | 
			
		||||
php_admin_value[upload_max_filesize] = <UPLOAD_MAX_SIZE>
 | 
			
		||||
							
								
								
									
										10
									
								
								rootfs/usr/local/bin/run.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										10
									
								
								rootfs/usr/local/bin/run.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,10 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Set attachment size limit
 | 
			
		||||
sed -i "s/<UPLOAD_MAX_SIZE>/$UPLOAD_MAX_SIZE/g" /etc/php7/php-fpm.conf /etc/nginx/nginx.conf
 | 
			
		||||
 | 
			
		||||
# Fix permissions
 | 
			
		||||
chown -R $UID:$GID /rainloop /services /var/log /var/lib/nginx
 | 
			
		||||
 | 
			
		||||
# RUN !
 | 
			
		||||
exec su-exec $UID:$GID /bin/s6-svscan /services
 | 
			
		||||
		Reference in New Issue
	
	Block a user