ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • AWS EC2에 스프링 프로젝트 배포하기 (FileZilla 사용)
    IT, 프로그래밍/AWS 2018. 8. 22. 19:51

    이번 포스팅은 아마존 웹 서비스 중 EC2를 사용하여 스프링 프로젝트를 배포하는 방법에 관한 내용입니다.


    운영 환경 : 우분투 16.04, tomcat8

    원격 접속  : putty 

    FTP 파일 전송 : FileZilla


    기본적으로 위에 있는 환경이 구축되어 있다고 가정하고 시작하겠습니다.




    먼저 이클립스를 통해 war 파일을 export 해 줍니다.








    이제 파일질라를 EC2 인스턴스에 연결하고, /var/lib/tomcat8/webapps 폴더 밑에 war 파일을 전송시킵니다.




    만약 파일전송이 안되시는 분들은, 권한 문제일 가능성이 높습니다.

    webapps 폴더의 소유자를 tomcat8로, 모든 작업이 가능하도록 권한을 설정 해 줍니다.


    1
    2
    3
    4
    ~$ sudo su
    # chmod -R 777 /var/lib/tomcat8/webapps
    # chown -R tomcat8:tomcat8 /var/lib/tomcat8/webapps
     
    cs

      


    그리고 모든 설정이 완료 되었으면 톰캣을 재시작 해 줍니다.


    1
     sudo service tomcat8 restart
    cs



    그리고 파일이 정상적으로 넘어 왔다면, 톰캣에서 자동으로 폴더를 생성하여 접근이 가능하도록 합니다.



    (여기서 오류가 생기시는 분들은 /var/lib/tomcat8/logs 여기에서 로그 파일을 확인 해 봅시다. 어떤 에러가 발생하는지 자세하게 나옵니다)


    기본적으로 http://IP주소:8080 으로 접근 하였을 시, ROOT에 있는 디폴트 페이지를 불러오는데요.


    It work~~ 어쩌고 저쩌고 하는 인덱스 페이지 입니다.


    우리가 올린 프로젝트를 실행 시키려면 http://IP주소:8080/프로젝트명 으로 접근해 보면 됩니다.



    + 만약에 http://IP주소:8080/ 으로 접근 하였을 시에 ROOT 프로젝트 말고 우리가 올린 프로젝트를 실행하게 하고 싶으면, server.xml 파일에 따로 설정을 해 주어야 합니다.


    우선 문서 편집기로 /var/lib/tomcat8/conf 경로 안에 있는 server.xml을 실행 시킵니다.


    그리고 Host 설정 부분에 context 설정을 따로 추가합니다.


    1
      <Context path="" docBase="프로젝트명" reloadable="true"/>
    cs


    이 부분을 따로 Host 설정 안에 넣어 주시면 됩니다. 


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     <Host name="localhost"  appBase="webapps"
                unpackWARs="true" autoDeploy="true">
     
            <Context path="" docBase="프로젝트명" reloadable="true"/>
     
     
            <!-- SingleSignOn valve, share authentication between web applications
                 Documentation at: /docs/config/valve.html -->
            <!--
            <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
     
    cs



    그리고 톰캣을 다시 실행시켜 주시고 루트 경로로 접근해 보면 됩니다.

Designed by Tistory.