[AWS] AWS 가상컴퓨터 생성~4.다른 서버에서 ssh 원격으로 aws ec2에 접속 및 프로젝트 전송,배포~(아마존 클라우드 서버)_cloud computer virtual_-신촌 더조은 학원 AWS-+How to sign up for AWS and use EC2 service+

~4.다른 서버에서 ssh 원격으로 aws ec2에 접속 및 프로젝트 전송,배포~

# 다른서버 = 지난번 포스팅에서 vitual box를 이용하여 ubuntu server 2개를 생성하였었음 그중 개발서버 server01 (아래링크 참조)

https://rockbottomdevbus.blogspot.com/2024/08/ubuntu-virtualbox-vs-6-vscode-remote.html



1. 우분투 서버01 에서 aws ec2서버 ssh연결

- 지난번 생성한 virtual box ubuntu server01(개발서버) 시작 



- vscode로 우분투 서버01 접속 


- 로컬 암호화키 AWS_TEST_KEY.pem를 서버01에 드래그앤드롭 



- 해당파일 /home/user1/.ssh/ 로 이동시키기 

mv AWS_TEST_KEY.pem .ssh

- 권한변경 

chmod 600 .ssh/AWS_TEST_KEY.pem 



2. 우분투 서버01 에서 aws ec2서버로 프로젝트 war파일전달

- 프로젝트는 아래 링크에서 다운가능 

https://github.com/test119770808/springex 

- 프로젝트 폴더 경로로 이동

cd springex-main

- server01 프로젝트의 war파일 aws ec2서버로 복사해서 보내기 (gradlew bulid를 진행하면 생성되는 프로젝트 war파일)

tip) war파일 풀기 톰캣 재실행 (재실행하면 /usr/local/lib/tomcat/webapps 경로에 war파일이 압축풀리면서 배포됨 )

scp -i ~/.ssh/AWS_TEST_KEY.pem ./build/libs/springex-1.0-SNAPSHOT.war ec2-user@43.203.251.50:~/app.war

* (권한때문에 다이렉트로 못가서 홈으로 보냄)

yes 



- ec2내부에서 전달받은 war파일 이동 및 이름변경 

ssh -i ~/.ssh/AWS_TEST_KEY.pem ec2-user@43.203.251.50 sudo mv app.war /usr/local/lib/tomcat/webapps/ROOT.war

- war파일 위치 및 이름 확인 

ssh -i ~/.ssh/AWS_TEST_KEY.pem ec2-user@43.203.251.50 sudo ls -l /usr/local/lib/tomcat/webapps/



3. 배포 및 테스트 

-톰캣 시작 

ssh -i ~/.ssh/AWS_TEST_KEY.pem ec2-user@43.203.251.50 sudo /usr/local/lib/tomcat/bin/startup.sh



- 브라우저 실행 시 연결 안됨 

4. 오류 로그 확인 

sudo cat /usr/local/lib/tomcat/logs/catalina.out | more 



- 원인은 jdbc 오류 

생각해보니 jdbcUrl 설정을 로컬ip로 지정했음 

당연히 aws서버와 내 로컬ip는 통신이안됨 

<property name="jdbcUrl" value="jdbc:mysql://192.168.45.146:3306/webdb?serverTimezone=Asia/Seoul"></property>


- AWS서버와 DB가 통신하기위해 AWS에 DB서버 설치필요 (RDS)






댓글

T O P