인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

오늘내일님의 프로필 이미지
오늘내일

작성한 질문수

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

배포 질문!!

해결된 질문

작성

·

266

2

안녕하세요 강의 잘 듣고 있습니다!!

강의에서 배포를 위해 Java, git, mysql 이렇게 세가지 프로그램을 설치했는데 만약 데이터베이스를 oracle을 사용한다면 mysql이 아닌 oracle을 설치하면 되는걸까요?? 그리고 스프링부트의 dependencies를 통해 여러가지 라이브러리들이 자동으로 설치되는데 jar파일을 EC2에서 실행하면 자동으로 똑같이 라이브러리들(mybatis, websocket 등등)이 설치되는게 맞는걸까요?? 한번 시도해보고 싶어서 질문 드립니다!!

답변 1

1

최태현님의 프로필 이미지
최태현
지식공유자

안녕하세요, 오늘내일님!! 좋은 질문 항상 감사드립니다~ 😊

 

[1. Oracle 사용하기]

넵넵!! 만약 oracle을 사용하고 싶으시다면, MySQL 대신 Oracle을 설치하시면 됩니다!

물론 진작 준비되어 있는 oracle이 원격에 있다면 연결할 수도 있고요~!! 저희가 MySQL과 스프링 서버를 연결하기 위해 설정했던 application.yml 만 변경해주면 됩니다!

저희는 JPA를 사용했기 때문에 손쉽게 DB 교체가 가능합니다 ㅎㅎㅎ

 

[2. jar 파일을 실행하면 dependencies에 적어준 라이브러리가 자동 설치될까요?!]

비슷한데 조금 다릅니다!!!

정확히는 jar 파일을 만드는 순간, 필요한 라이브러리 코드들이 모두 jar 안에 들어가게 됩니다!

때문에 EC2에서 jar 파일만 실행하게 되면 정상 동작할 수 있는 셈이죠!!

 

저희는 배포하는 순서를

  1. EC2에 git clone을 통해 코드 가져오기

  2. gradle build를 통해 jar 만들기

    1. 이 과정에서 필요한 의존성이 있다면 다운로드 됩니다!

  3. jar 실행하기

    1. jar 안에 라이브러리 코드들이 들어 있기에 실행만 하면 됩니다

로 처리했는데요~~ jar 파일만 EC2에 있어도 되기에 다음과 같은 순서도 가능합니다.

 

  1. 우리 컴퓨터 (로컬) 에서 gradle build를 통해 jar 만들기

  2. EC2에 jar만 옮기기

    1. 강의에서 다루지는 않았지만 scp 와 같은 명령어를 활용할 수 있습니다!

    2. ssh 와 비슷한 명령어에요!

  3. jar 실행하기

    1. jar 안에 라이브러리 코드들이 들어 있기에 실행만 하면 됩니다.

 

답변이 되었으면 좋겠네요~ 또 궁금한 부분 있으시면 편하게 질문 올려주세요!! 🙏

감사합니다!!! 🙇

오늘내일님의 프로필 이미지
오늘내일
질문자

항상 친절한 답변 감사합니다!! 궁금한 부분이 해결됐어요 ㅎㅎ

오늘내일님의 프로필 이미지
오늘내일

작성한 질문수

질문하기