(1) beforeinstall.sh : 도커 컴포즈 다운 / 백업 기능
#!/bin/sh
# https://github.com/aws/aws-codedeploy-agent/issues/14 이슈
참조
# 기존에 있는 폴더를 app폴더로 옮기고 기존의 도커 컴포즈를 다운
if [ -d /home/ubuntu/app/ ]; then
if [ -d /home/ubuntu/app-backup ]; then
rm -rf /home/ubuntu/app-backup
fi
if [ -f /home/ubuntu/app/docker-compose.yml ]; then
cd /home/ubuntu/app
sudo docker-compose down -v > /home/ubuntu/app/nohup.out
fi
cd /
mv /home/ubuntu/app /home/ubuntu/app-backup
fi
mkdir -p /home/ubuntu/app
(2) afterinstall.sh : 백업한 데이터, 로그를 가져옴.
# nginx app conf를 nginx app relase.conf로 바꿈
if [ -d /home/ubuntu/app-backup/ ]; then
mkdir -p /home/ubuntu/app
if [ -d /home/ubuntu/app-backup/data ]; then
mv /home/ubuntu/app-backup/data /home/ubuntu/app/data
fi
if [ -d /home/ubuntu/app-backup/logs ]; then # nginx로그를 가져옴
mkdir -p /home/ubuntu/app/nginx
mv /home/ubuntu/app-backup/nginx/logs /home/ubuntu/app/nginx/logs
fi
fi