이번 포스팅은 FTP를 사용하여 클라우드 컴퓨터의 tomcat에 파일을 전송하고 배포하는 과정을 배우고 필수적이진 않지만 제가 어려움을 겪었던 것들을 정리해 보겠습니다.
먼저 커맨드 창을 열어
sudo apt install filezilla
명령어를 입력하고 파일질라를 설치해 줍니다.
설치된 모습
파일 질라를 실행 하고 ec2와 연결하기 위해 버튼을 눌러 site manager를 열어줍니다.
Host에 ec2의 탄력적 주소(고정 ip)를 입력하고 프로토콜과 logon type을 사진과 같이 바꿔주시고 user는 ubuntu keyfile 은 aws에서 받은 .pem을 넣어줍니다. 이제 connect를 눌러주면 연결이 완료 됩니다.
접속이 완료된 모습
톰캣을 사용하여 wepapp을 배포하기 위해선 개발한 프로젝트를 war형태로 export하고 그 war파일을 tomcat 디렉토리의 webapps로 이동시켜 줘야합니다.
저는 이클립스를 사용하였기에 이클립스에서 export하는 법을 설명해 드리겠습니다.
ㄱ) 먼저 배포하고자 하는 프로젝트를 우클릭-> export를 클릭해 줍니다.
ㄴ) export시 파일 확장자를 war로 설정
ㄷ) 파일 경로 설정 후 finish 버튼
export가 완료 되었습니다.
파일을 전송하기 전에 webapps 폴더의 권한을 풀어줘야 합니다.
ㄱ) ec2 접속 후 아래 명령어를 입력해 주시면 됩니다.
sudo chmod 777 /var/lib/tomcat9/webapps
파일질라에서 파일전송시 사용하는 화면을 설명 드리겠습니다.
1번 창은 status를 나타내고 명령의 성공과 실패를 알려줍니다.
2번 창은 내 피씨의 파일 시스템을 나타내줍니다. 파일을 더블클릭시 3번 창에서 설정된 주소로 파일을 전송합니다.
3번 창은 원격 피씨를 나타내고 전송받을 파일의 위치를 정합니다.
우선 3번의 주소창에
/var/lib/tomcat9/webapps을 입력해 줍니다.
2번창에서 3.에서 export한 웹앱을 찾아서 더블클릭 하거나 우클릭후 업로드를 선택해주시면 파일 전송이 완료됩니다.
이제 톰캣과 엔진x을 재실행 하면 배포가 완료됩니다.
sudo service tomcat9 start //톰캣 시작 명령어
sudo service nginx start //엔젠 엑스 시작 명령어
저는 웹 애플리케이션을 개발할때 해당 app의 path를 root로 사용해 줬기 때문에 톰캣의 설정을 바꿔줘야 합니다.
톰캣의 환경설정 관련 파일들
모듈의 path를 바꾸기 위해선 server.xml 파일을 수정해 줘야합니다.
sudo vim /var/lib/tomcat9/conf/server.xml
파일의 제일 밑쪽에
<Context path="" docBase="Goldrush" reloadable="false"><Context>
를 입력하여 path를 root( / )로 접근시 Goldrush라는 앱으로 매핑 시켜줬습니다.
배포가 끝은 아닌것 같습니다. 첫 배포를 시도하면서 지금 편하게 파일을 뚝 올리고 마는 형식으로 진행하다 보니 오류를 수정하고 다시 재배포하는 과정이 번거롭고다는 것을 느꼈습니다. 조금더 내공을 쌓고 더쉽고 편리한 배포를 위해 어떤 과정이 필요한지 포스팅 하겠습니다.