DjangoCRUDBoard CI/CD 3. beforeinstall, afterinstall

(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

좋은 웹페이지 즐겨찾기