#!/bin/bash

DOCKER_REPOSITORY_NAME=$1
ID=kmy9810
PW="aldud3015^^"

TAG=$(docker images | awk -v DOCKER_REPOSITORY_NAME=$DOCKER_REPOSITORY_NAME '{if ($1 == DOCKER_REPOSITORY_NAME) print $2;}')

if [[ $TAG =~ [0-9]\\.[0-9]{1,2} ]]; then
    NEW_TAG_VER=$(echo $TAG 0.01 | awk '{print $1 + $2}')
    echo "현재 버전은 $TAG 입니다."
    echo "새로운 버전은 $NEW_TAG_VER 입니다."
else
    NEW_TAG_VER=0.01
fi

docker build -t $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER .

docker login -u $ID -p $PW

if [ $NEW_TAG_VER != "0.01" ]; then
    docker rmi $DOCKER_REPOSITORY_NAME:$TAG
fi

docker tag $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER $ID/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER

docker push $ID/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER

docker tag $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER $ID/$DOCKER_REPOSITORY_NAME:latest

docker push $ID/$DOCKER_REPOSITORY_NAME:latest

docker rmi $ID/$DOCKER_REPOSITORY_NAME:latest
docker rmi $ID/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER
#!/bin/bash
DOCKER_USERNAME=kmy9810
DOCKER_PASSWORD="aldud3015^^"

DOCKER_REPOSITORY_NAME="celery_repo"
TAG=$(docker images | awk -v DOCKER_REPOSITORY_NAME=$DOCKER_REPOSITORY_NAME '{if ($1 == DOCKER_REPOSITORY_NAME) print $2;}')

if [[ $TAG =~ [0-9]\\.[0-9]{1,2} ]]; then
    NEW_TAG_VER=$(echo $TAG 0.01 | awk '{print $1 + $2}')
    echo "현재 버전은 $TAG 입니다."
    echo "새로운 버전은 $NEW_TAG_VER 입니다."
else
    NEW_TAG_VER=0.01
fi

# Docker 이미지 빌드
docker build -t $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER -f Dockerfile2 .
docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD

# 환경 변수 설정
export DEBUG=1
export DJANGO_ALLOWED_HOSTS="localhost 127.0.0.1 [::1]"
export CELERY_BROKER="redis://redis:6379/0"
export CELERY_BACKEND="redis://redis:6379/0"

# 다른 서비스에 대한 종속성 확인 및 대기

# 이전 버전의 이미지 제거
if [ $NEW_TAG_VER != "0.01" ]; then
    docker rmi $DOCKER_REPOSITORY_NAME:$TAG
fi

# Docker Hub에 로그인
docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD

# 이미지 태그
docker tag $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER

# 이미지 푸시
docker push $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER

# "latest" 태그로 이미지 태그
docker tag $DOCKER_REPOSITORY_NAME:$NEW_TAG_VER $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:latest

# "latest" 태그 이미지 푸시
docker push $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:latest

# 사용이 끝난 이미지 정리
docker rmi $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:latest
docker rmi $DOCKER_USERNAME/$DOCKER_REPOSITORY_NAME:$NEW_TAG_VER
FROM python:3.9
WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
RUN pip install gunicorn
COPY . .
EXPOSE 8000
CMD ["bash", "-c", "gunicorn --bind 0.0.0.0:8000 gunicorn.conf.py Our_Liberation_Note.wsgi:application & celery -A Our_Liberation_Note worker --beat --loglevel=info"]
FROM python:3.9
WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install --upgrade pip
RUN pip install -r requirements.txt
COPY . .
RUN ls -la
CMD ["celery", "-A", "Our_Liberation_Note", "worker", "--beat", "--loglevel=info"]