🥹 WAR는 별도의 웹 서버나 AWS를 필요로 한다
※ WAR 배포하기
0. AWS EC2 인스턴스 생성
https://dev-tanda.tistory.com/5
AWS EC2 인스턴스 만들기 (웹프로젝트 배포를 위한)
AWS 가입을 했다면 로그인을 해준다 - 콘솔 홈에서 EC2를 클릭해준다 (없으면 상단 검색창에 검색) 1. 보안그룹생성 먼저 보안그룹을 생성할 것이다 >> 좌측 네비바 - 네트워크 및 보안 - "보안그룹"
dev-tanda.tistory.com
1. MobaXterm으로 EC2 서버 접속
MobaXterm 실행 - Session - SSH - [Remote host : 생성한 퍼블릭 IP주소], [Specify username : ec2-user]
- [Advanced SSH settings : Use private key 체크 후 생성한 키페어 등록]

다 작성했으면 [OK] 버튼을 누르고 생성된 사용자 세션을 더블클릭하여 인스턴스에 접속한다

이제 순서대로 터미널창에 코드를 작성해주면 된다.
2. EC2 인스턴스 업데이트
sudo yum update -y
- 시스템의 모든 패키지를 최신버전으로 업데이트하는 명령
3. OpenJDK 설치 및 확인
sudo yum install -y httpd
sudo systemctl start httpd
sudo systemctl status httpd
- Java17버전으로 작업해서 17버전을 설치해줬다 그리고 설치된 버전 확인
4. MySQL 이 필요하다면 설치 및 설정
https://dev-tanda.tistory.com/7
MySQL 설치하기 (AWS EC2)
※ MySQL 설치 및 설정 1. MySQL 설치 dnf search mysql sudo dnf update sudo wget https://dev.mysql.com/get/mysql80-community-release-el9-4.noarch.rpm sudo dnf install mysql80-community-release-el9-4.noarch.rpm dnf repolist enabled sudo dnf install my
dev-tanda.tistory.com
5. Apache Tomcat 설치 및 확인
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.83/bin/apache-tomcat-9.0.83.tar.gz
tar xvf apache-tomcat-9.0.83.tar.gz
sudo cp -r apache-tomcat-9.0.83 /usr/local/tomcat
- tomcat.apache.org 사이트 접속 - 왼쪽의 Download - Tomcat 9 선택 - 스크롤 내려 Core - tar.gz 찾아 우클릭 - 링크복사
- tar xvf 압축파일 해제
- /usr/local/tomcat 경로에 압축해제된 apache-tomcat-9.0.83 폴더를 복사
6. PATH 설정
readlink -f /usr/bin/java
sudo vi /etc/profile
- profile(리눅스가 시작될 때 profile 내의 내용이 먼저 시작된다) 파일을 열어 가장 아래 새 줄에 다음 내용을 추가한다
JAVA_HOME=/usr/lib/jvm/java-17-amazon-corretto.x86_64/bin/java
CATALINA_HOME=/usr/local/tomcat
CLASSPATH=$JAVA_HOME/jre/lib:$CATALINA_HOME/lib/tools.jar:$CATALINA_HOME/lib-jsp-api.jar:$CATALINA_HOME/bin:/sbin
PATH=$PATH:$JAVA_HOME/bin:$CATALINA_HOME/bin
export JAVA_HOME CATALINA_HOME PATH CLASSPATH
- 변경 사항을 저장하고 종료 (esc → :wq)
source /etc/profile
- 변경된 내용 적용 (재부팅 없이)
7. Tomcat 서비스 systemd에서 제어
sudo vi /etc/systemd/system/tomcat9.service
- Tomcat 서비스를 systemd에서 제어하기 위해 .service 파일 생성 (Unit, Service, Install 3가지 항목으로 구성됨)
[Unit]
Description=Apache Tomcat9
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
User=root
Group=root
Umask=0007
RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target
- 처음은 빈화면이다 위 내용을 복사 붙여넣기 한 뒤 변경 사항을 저장하고 종료 (esc → :wq)
sudo systemctl daemon-reload
- 변경된 내용 적용
8. Tomcat 서비스 시작 확인
sudo systemctl start tomcat9
sudo systemctl status tomcat9
9. WAR 파일 EC2로 전송
MobaXterm에서 드래그 앤 드롭으로 간편하게 옮길 수 있다 " /home/ec2-user/ " 경로로 파일명.war 파일을 업로드한다.
.war 파일의 위치은 톰캣 설치 디렉터리의 webapps/ 폴더에 위치해야 한다
보통 /usr/local/tomcat/webapps/ 경로에 해당 파일을 업로드 하면 된다
sudo cp 파일명.war /usr/local/tomcat/webapps/
- cp 명령어로 파일을 해당경로에 복사한다 (바로 webapps/ 경로로 옮길 수 없기 때문에 명령어로 복사해줌)
sudo cd /usr/local/tomcat/webapps/
ls
- 해당경로로 들어가서 파일이 잘 들어갔는지 ls 명령어로 확인해보면 war파일의 압축이 알아서 풀려있을 것이다
>> war 배포가 끝났다
웹브라우저 주소창에 퍼블릭IP:8080 을 입력하면 EC2서버에 가동되고있는 프로젝트를 확인할 수 있다
'개발 > 배포' 카테고리의 다른 글
| [SpringBoot] 배포 패키징 jar에서 war로 변경 (0) | 2024.02.10 |
|---|---|
| [AWS EC2] jar파일 배포 (0) | 2024.02.10 |
| [MySQL] 스프링 배포 중 차트가 안 보인다 (0) | 2024.02.10 |
| [MySQL] 설치하기 (AWS EC2) (0) | 2024.02.10 |
| [AWS EC2] 인스턴스 만들기 (웹 프로젝트 배포를 위한) (0) | 2024.02.09 |