# 자바 21 버전 설치
sudo yum install -y java-21-amazon-corretto-devel
java -version
# yum 업데이트 후 docker 설치
sudo yum update -y
sudo yum install -y docker
# docker 버전 확인
docker -v
# docker 실행
sudo service docker start
# docker 그룹 생성 후 사용자 추가: sudo 없이 docker 실행 가능
sudo groupadd docker
sudo usermod -aG docker $USER
# 리눅스 재부팅 후 테스트 (exit 하고 다시 ec2 연결)
exit
# 다시 연결 후 출력 잘 되는지 확인
docker container run hello-world
# docker-compose 설치
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# docker-compose 실행 권한 부여
sudo chmod +x /usr/local/bin/docker-compose
# 버전 확인
docker-compose --version
# 이렇게 나오면 설치 완료
docker-compose version 1.29.2, build 5becea4c
# [300762] Error loading Python lib '/tmp/_MEImKEyQN/libpython3.7m.so.1.0':~ 오류날 시
sudo dnf install libxcrypt-compat
# 파일 구조
home
|---- ec2-user
|---- docker
|---- kafka
|---- docker-composer.yml
|---- redis
|---- docker-composer.yml
|---- {project-name}
|---- app
# 도커 폴더 생성
mkdir docker
cd docker
# kafka를 도커 컨테이너에 담아서 띄우기 위해서 파일 생성
mkdir kafka
cd kafka
vi docker-compose.yml
# docker-compose.yml 이 있는 곳에서 실행
docker-compose up -d
# /docker 폴더 안에 redis 폴더 생성
cd ..
mkdir redis
cd redis
vi docker-compose.yml
docker-compose up -d
# 총 3개의 파일이 실행되고 있어야 함
docker ps
# 프로젝트 파일 생성
mkdir app
cd app
git clone {배포하고자하는 git clone}
# yml 파일 생성
cd ~
cd app/{project-name}
cd src/main/resources
vi application.yml
# 배포하고자 하는 파일 이동
cd ~
cd app/{project-name}
# 프로젝트가 있는 곳으로 이동
cd app/{project-name}
# 실행 권한 주기
chmod +x ./gradlew
./gradlew
./gradlew build
# jar 파일이 생긴 곳에서 실행
cd build/libs/
java -jar build/libs/OMG_project-0.0.1-SNAPSHOT.jar
# 터미널 세션 종료 후에도 애플리케이션 계속 실행될려면 아래 코드 작성
nohup java -jar build/libs/OMG_project-0.0.1-SNAPSHOT.jar &