728x90
Dockerfile
도커 이미지 생성 파일
FROM openjdk:11-jre-slim
WORKDIR /app
COPY ./application.jar /app/application.jar
RUN mkdir -p ./logs
CMD ["java", "-Duser.timezone=Asia/Seoul", "-Dspring.profiles.active=dev", "-jar", "application.jar"]
docker-compose.yml
도커 실행 파일
services:
application:
container_name: application_container
restart: unless-stopped
image: application-image:latest
ports:
- "8080:8080"
volumes:
- ./logs:/logs
restart.sh
재 실행 파일
#!/bin/bash
# restart Application With Docker
echo "Application Docker Restarting..."
IMAGE_NAME="application-image"
CONTAINER_NAME="application"
echo ""
echo "Move Jar File"
sudo mv -f /home/ubuntu/build/libs/application.jar ./application.jar
echo "Create Image"
sudo docker build -t $IMAGE_NAME .
echo "Check Docker Running"
# 실행 중인 컨테이너 ID 가져오기
CONTAINER_ID=$(sudo docker ps -q -f name=$CONTAINER_NAME)
# 컨테이너 ID가 비어 있는지 확인
if [ -n "$CONTAINER_ID" ]; then
echo "Stopping and removing existing container..."
sudo docker stop $CONTAINER_ID
sudo docker rm $CONTAINER_ID
else
echo "No running container with the name $CONTAINER_NAME found."
fi
echo "Start Docker Compose '$CONTAINER_NAME' "
sudo docker-compose up -d
echo "Process Completed"
728x90
'ETC > Docker' 카테고리의 다른 글
Docker Network 기본 사용법 과 Tip (0) | 2023.08.09 |
---|---|
Docker Network (0) | 2023.08.09 |
내가 이해한 Volume이란? (0) | 2023.08.03 |
Mysql 설정 및 기본 명령어 (0) | 2023.08.03 |
Docker Swarm과 Kubernetes(K8s) 비교 (0) | 2023.07.26 |