feat: Ajout d'un script de backup
This commit is contained in:
		@@ -14,13 +14,6 @@ Pour construire le site :
 | 
				
			|||||||
hugo -D
 | 
					hugo -D
 | 
				
			||||||
```
 | 
					```
 | 
				
			||||||
 | 
					
 | 
				
			||||||
## Logs
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
```
 | 
					 | 
				
			||||||
ssh obelix
 | 
					 | 
				
			||||||
docker run -**t --rm -v /home/pi/backups/histoiredunpied:/backup -v histoiredunpied-log-volume:/logs alpine:3.11.5 ash
 | 
					 | 
				
			||||||
```
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
## Exemple de site
 | 
					## Exemple de site
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Voici quelques sites pour s'inspirer :
 | 
					Voici quelques sites pour s'inspirer :
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										66
									
								
								run
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										66
									
								
								run
									
									
									
									
									
										Executable file
									
								
							@@ -0,0 +1,66 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -e  Exit immediately if a command exits with a non-zero status.
 | 
				
			||||||
 | 
					# -u  Treat unset variables as an error when substituting.
 | 
				
			||||||
 | 
					set -eu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					DOCKER_CONTEXT=vert
 | 
				
			||||||
 | 
					START=`date +%s`
 | 
				
			||||||
 | 
					BACKUP_DATE=`date +%Y%m%d`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					logs_backup() {
 | 
				
			||||||
 | 
					  mkdir -p backups
 | 
				
			||||||
 | 
					  ssh $DOCKER_CONTEXT mkdir -p backups/histoiredunpied
 | 
				
			||||||
 | 
					  docker --context $DOCKER_CONTEXT run -t --rm -v $HOME/backups/histoiredunpied:/backup -v histoiredunpied-log-volume:/logs alpine:3.11.6 ash -c "cd /logs && tar cvf /backup/${BACKUP_DATE}_histoiredunpied_logs.tar ."
 | 
				
			||||||
 | 
					  ssh $DOCKER_CONTEXT "sudo chown kosssi:docker $HOME/backups/histoiredunpied/${BACKUP_DATE}_histoiredunpied_logs.tar"
 | 
				
			||||||
 | 
					  scp $DOCKER_CONTEXT:$HOME/backups/histoiredunpied/${BACKUP_DATE}_histoiredunpied_logs.tar backups
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					logs_restore() {
 | 
				
			||||||
 | 
					  ssh $DOCKER_CONTEXT mkdir -p backups/histoiredunpied
 | 
				
			||||||
 | 
					  scp backups/${BACKUP_DATE}_histoiredunpied_logs.tar $DOCKER_CONTEXT:$HOME/backups/histoiredunpied/
 | 
				
			||||||
 | 
					  docker --context $DOCKER_CONTEXT run -t --rm -v $HOME/backups/histoiredunpied:/backup -v histoiredunpied-log-volume:/logs alpine:3.11.6 ash -c "cd /logs && tar xvf /backup/${BACKUP_DATE}_histoiredunpied_logs.tar --strip 1"
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					logs_update() {
 | 
				
			||||||
 | 
					  docker --context $DOCKER_CONTEXT exec -it histoiredunpied-logs ash /bin/stats.sh generate
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					help() {
 | 
				
			||||||
 | 
					  echo "💡 Aide"
 | 
				
			||||||
 | 
					  echo "-------"
 | 
				
			||||||
 | 
					  echo
 | 
				
			||||||
 | 
					  echo "Commandes :"
 | 
				
			||||||
 | 
					  echo "- ./run logs backup        📥 Sauvegarde les logs"
 | 
				
			||||||
 | 
					  echo "- ./run logs restore       📤 Restore les logs"
 | 
				
			||||||
 | 
					  echo "- ./run logs update        🌠 Mise à jour de GoAccess"
 | 
				
			||||||
 | 
					  echo
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if [ $# -ge 1 ]; then
 | 
				
			||||||
 | 
					  if [ $1 == "logs" ]; then
 | 
				
			||||||
 | 
					    if [ $# -ge 2 ]; then
 | 
				
			||||||
 | 
					      if [ $2 == "backup" ]; then
 | 
				
			||||||
 | 
					        echo "📥 Sauvegarde les logs"
 | 
				
			||||||
 | 
					        logs_backup
 | 
				
			||||||
 | 
					      elif [ $2 == "restore" ]; then
 | 
				
			||||||
 | 
					        echo "📤 Restore les logs"
 | 
				
			||||||
 | 
					        logs_restore
 | 
				
			||||||
 | 
					      elif [ $2 == "update" ]; then
 | 
				
			||||||
 | 
					        echo "🌠 Mise à jour de GoAccess"
 | 
				
			||||||
 | 
					        logs_update
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        help
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					    else
 | 
				
			||||||
 | 
					      help
 | 
				
			||||||
 | 
					    fi
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					    help
 | 
				
			||||||
 | 
					  fi
 | 
				
			||||||
 | 
					else
 | 
				
			||||||
 | 
					  help
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					END=`date +%s`
 | 
				
			||||||
 | 
					echo "✨ Done in $((END-START))s"
 | 
				
			||||||
		Reference in New Issue
	
	Block a user