스터디/GDG_클라우드 스터디

[2주차]구글클라우드_배포와 재배포&깃헙 클론 후 배포(ft.패키징)

개발자 덕구🐾 2022. 8. 16. 03:48
728x90

가상화 기술 : 

 

 

각각 용도가 다른 3개의 물리 서버 (30%만 사용중)  -> 한개의 서버를 아끼고 한개의 서버에 2개를 올린다. 

 

<쉬고 있는 부분을 사용하여 효율적으로 사용>

 

 

 

앱 엔진의 장점 

1. 관리가 용이하다.  (오토 스케일링, 로드 밸런싱 ) 

2. 확장이 용이하다. 

3. 무중단 서비스 

4. 장비사용 비용청구가 사용한 만큼만 과금이 된다. 

 

 

 


 

1. yaml 파일 추가 

 

 

App Engine 표준 환경에 앱을 배포하려면 설명자 파일을 만들어야한다. 

 

 

 

app.yaml 파일에서 

 

를 입력해준다. 

 

 

 

 

DemoApplication.java에 들어가서 

import를 한줄 추가해준다. 

import org.springframework.web.bind.annotation.*;

 

 

다시 만든 프로젝트 위치로 이동하여 위 같은 명령어를 입력하면 로컬에서 실행된다. 

 

표시한 픽토그램을 누르고 8080으로 들어가기를 눌러들어가면 만든 spring 코드 대로 잘 보인다. 

 

 

 

 

 


2. 배포 

 

 

 

 

 

1. 원하는 리전으로  선택해준다. 

 

 

2. 패키징을 해줍니다. 

 

3. 배포해줍니다. 

 

 

 

시간이 1분정도 소요됩니다!!

 

 

4. build Success 가 잘 뜹니다. 

 

5.  url 확인 명령어 

배포된 코드가 나올 url이 출력됩니다. 

 

url로 들어가면 

잘 나옵니다!

 


 

 

3. 재배포 

만약 내용을 변경하여 다르게 배포하고 싶다면 ??

 

java코드를 수정한 후 package를 다시 한번 해준다. 

 

./mvnw -DskipTests package

 

 

그 다음 다시 배포한다. 

./mvnw appengine:deploy

 

위와 동일하게 url 확인 명령어를 입력하면 url이 나옵니다 .

들어가면 수정한 대로 잘 변경되어있는 것을 확인할 수 있습니다. 

 

 

 

 

 

 


 

 

4. git clone 한 프로젝트 배포 

 

 

 

1. git clone ~~~ 을 입력합니다. 

 

 

2. cd를 통해 프로젝트 안으로  들어갑니다. 

 

 

3. App Engine 설명자 추가 

 

mkdir -p src/main/appengine/
touch src/main/appengine/app.yaml

 

4. nano src/main/appengine/app.yaml 을 통해 들어간다. 

 

runtime: java11
instance_class: F1

을 입력한다. 

 

 

5. mvnw 실행권한 부여 

 

chmod +x mvnw

 

 

6. 로컬에서 실행확인 

 ./mvnw -DskipTests spring-boot:run

 

 

7. 2. 배포와 같은 방법으로  리전설정(동일한 프로젝트에서 다시 설정하면 Error가 발생한다.), 패키징을 해준다.

그 뒤 배포 명령어를 입력한후 url확인을 한다. 

 

 

 

 

 

스터디에서 배우는 내용이 딱 내가 배우고 싶었던 내용이다. 너무 좋다. 

배포를 복잡하고 어렵다고 생각했는데 구글클라우드는 aws와 비교하면 놀랄만큼 간단하다.

반응형