[AWS] EC2로 Spring 프로젝트 배포

allsilver·2021년 8월 26일
0

Back-end

목록 보기
1/1

AWS EC2 생성

  1. Amazon AWS 계정 생성
  2. 인스턴스 시작
  3. AMI 프리티어 ubuntu선택
  4. 스토리지 30GB까지 무료
  5. 보안그룹 구성 원하는 포트범위 설정 - HTTP 80포트
  6. 인스턴트 시작하기
  7. 키 페어 생성 (다운로드 - 위치 꼭 기억해놓기)

EC2 접속

  1. 터미널 접속
  2. 'cd [키 페어 위치]'
  3. 'ssh -i [키 페어].pem ubuntu@[퍼블릭 IPv4 DNS주소]'
  4. 연결할거냐고 물어보면 'yes'
  5. 권한에 대한 오류 뜨면 'chmod 700 [키 페어].pem'으로 권한 설정 (소유자에게 읽기,쓰기,실행 권한 부여)
  6. 다시 'ssh -i [키 페어].pem ubuntu@[퍼블릭 IPv4 DNS주소]'

FileZila로 EC2 접속

  1. FileZila 접속
  2. 파일 - 사이트 관리자
  3. 새 사이트 - 프로토콜(SFTP) - 호스트(퍼블릭 IPv4주소) - 로그온 유형(키 파일) - 사용자(ubuntu) - 키 파일(다운로드한 키 파일) - 연결

EC2 Java설치

  1. 터미널로 EC2에 접속한 상태에서 할 것
  2. 'sudo apt-get update'
  3. 'sudo apt-get install [java 버전에 맞는 jdk]'
  4. 'javac -version'으로 설치 확인
  5. 'which javac'로 위치 탐색
  6. 'readlink -f [4에서 탐색한 값]'로 풀 경로 탐색
  7. 'sudo nano /etc/profile'에 export 하기
    • 'export JAVA_HOME=[5 결과 값에서 맨 뒤에 /bin/javac 빼고]'
    • 'export PATH=JAVAHOME/bin/:JAVA_HOME/bin/:PATH'
    • 'export CLASS_PATH=JAVAHOME/lib:JAVA_HOME/lib:CLASS_PATH'
    • 'ctrl + o + return'으로 저장
    • 'ctrl + x' 편집 나오기
  8. 'source /etc/profile'로 재로드
  9. 'sudo reboot now'로 서버 끄기(에러 창 뜨면 확인)
  10. 'echo $JAVA_HOME' 재접속해서 확인

EC2 Tomcat 설치

  1. 톰캣 사이트에서 다운로드 링크 주소 복사
  2. 터미널로 EC2에 접속한 상태에서 할 것
  3. 'wget [다운로드 링크 주소]'로 다운로드
  4. 'tar xvfz [다운로드 된 톰캣 파일명.tar.gz]'로 압축 해제
  5. 'cd /usr/local'로 local디렉토리 내부로 이동
  6. 'mkdir tomcat[톰캣 버전]'로 디렉토리 생성(ex. mkdir tomcat9.0)
  7. 'cd -'로 home/ubuntu로 빠져나오기
  8. 'sudo mv [압축 해제한 톰캣 파일] /usr/local/[5의 디렉토리]'로 파일 이동
  9. 'sudo vi /etc/profile'로 환경 변수 설정
    • 'i'로 insert모드
    • 'export CATALINA_HOME=/usr/local/[5의 디렉토리]'
    • 'esc'키로 insert모드 종료
    • ':wq!'로 저장 후 종료
  10. 'source /etc/profile'
  11. 'echo $CATALINA_HOME'으로 변수 설정 확인
  12. 'sudo vi /usr/local/[5의 디렉토리]/conf/server.xml'로 파일 열어서 URIEncoding추가
    • 만일 파일이 안보이면 'cd /usr/local/[5의 디렉토리]'로 이동하여 다른 디렉토리가 만들어져 있지 않은지 확인하기
    • server.xml파일에 코드 찾기
    • 'i'로 insert모드
    • 포트가 "8080"이 맞는지 확인하고 'URIEncoding="UTF-8"'추가
    • 'esc'키로 insert모드 종료
    • ':wq!'로 저장 후 종료
  13. 'sudo su'로 root로 권한 변경
  14. '/usr/local/[5의 디렉토리]/bin/startup.sh'로 톰캣 시작
  15. 크롬에 http://[퍼블릭 IPv4주소]:8080/ 해서 톰캣이 정상적으로 작동하는지 확인

FileZila로 EC2에 Spring 프로젝트 배포

  1. 프로젝트를 export해서 war파일 생성
  2. FileZila에 EC2 인스턴스 연결
  3. 오른쪽 리모트 사이트에 /usr/local/tomcat9.0/webapps 디렉토리 열기
    • 폴더를 찾을 수 없다면 터미널에서 권한 설정
      - 'sudo su'로 root모드
      • 'chmod -R 777 /usr/local/tomcat9.0/webapps'로 모든 작업 가능하게 부여
      • 'chown -R ubuntu /usr/local/tomcat9.0/webapps'로 ubuntu에게 소유자 권한 부여
      • '/usr/local/tomcat9.0/bin/startup.sh'로 다시시작
  4. 왼쪽 로컬 사이트에서 war파일을 찾아 webapps 디렉토리에 끌어놓기
  5. 크롬에 http://[퍼블릭 IPv4주소]:8080/[war파일명]/ 해서 확인
profile
일단 해보는 개발자

0개의 댓글