mirror of
				https://git.tt-rss.org/fox/ttrss-docker-compose
				synced 2025-11-04 09:34:13 +01:00 
			
		
		
		
	add side container which backups tt-rss database once a week
bump alpine image to 3.12
This commit is contained in:
		
							parent
							
								
									328984f153
								
							
						
					
					
						commit
						707b79b52f
					
				
					 5 changed files with 52 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
FROM alpine:3.9
 | 
			
		||||
FROM alpine:3.12
 | 
			
		||||
EXPOSE 9000/tcp
 | 
			
		||||
 | 
			
		||||
RUN apk add --no-cache php7 php7-fpm \
 | 
			
		||||
RUN apk add --no-cache dcron php7 php7-fpm \
 | 
			
		||||
	php7-pdo php7-gd php7-pgsql php7-pdo_pgsql php7-mbstring \
 | 
			
		||||
	php7-intl php7-xml php7-curl php7-session \
 | 
			
		||||
	php7-dom php7-fileinfo php7-json \
 | 
			
		||||
| 
						 | 
				
			
			@ -11,6 +11,8 @@ RUN apk add --no-cache php7 php7-fpm \
 | 
			
		|||
ADD startup.sh /
 | 
			
		||||
ADD updater.sh /
 | 
			
		||||
ADD index.php /
 | 
			
		||||
ADD dcron.sh /
 | 
			
		||||
ADD backup-database.sh /etc/periodic/weekly/backup-database
 | 
			
		||||
 | 
			
		||||
RUN sed -i.bak 's/^listen = 127.0.0.1:9000/listen = 9000/' /etc/php7/php-fpm.d/www.conf
 | 
			
		||||
RUN sed -i.bak 's/\(memory_limit =\) 128M/\1 256M/' /etc/php7/php.ini
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										22
									
								
								app/backup-database.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										22
									
								
								app/backup-database.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,22 @@
 | 
			
		|||
#!/bin/sh -e
 | 
			
		||||
 | 
			
		||||
DST_DIR=/backups
 | 
			
		||||
KEEP_DAYS=28
 | 
			
		||||
 | 
			
		||||
if pg_isready -h $DB_HOST -U $DB_USER; then
 | 
			
		||||
	DST_FILE=ttrss-backup-$(date +%Y%m%d).sql.gz
 | 
			
		||||
 | 
			
		||||
	echo backing up tt-rss database to $DST_DIR/$DST_FILE...
 | 
			
		||||
 | 
			
		||||
	export PGPASSWORD=$DB_PASS 
 | 
			
		||||
 | 
			
		||||
	pg_dump --clean -h $DB_HOST -U $DB_USER $DB_NAME | gzip > $DST_DIR/$DST_FILE
 | 
			
		||||
 | 
			
		||||
	echo cleaning up...
 | 
			
		||||
 | 
			
		||||
	find $DST_DIR -type f -name '*.sql.gz' -mtime +$KEEP_DAYS -delete
 | 
			
		||||
 | 
			
		||||
	echo done.
 | 
			
		||||
else
 | 
			
		||||
	echo backup failed: database is not ready.
 | 
			
		||||
fi
 | 
			
		||||
							
								
								
									
										5
									
								
								app/dcron.sh
									
										
									
									
									
										Executable file
									
								
							
							
						
						
									
										5
									
								
								app/dcron.sh
									
										
									
									
									
										Executable file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,5 @@
 | 
			
		|||
#!/bin/sh
 | 
			
		||||
# https://github.com/dubiousjim/dcron/issues/13
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
/usr/sbin/crond "$@"
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue