[Heroku] Heroku를 이용하여 Toy Project 배포하기

728x90
반응형
SMALL

 

# Heroku

 

Heroku는 다양한 언어를 지원하는 클라우드 Paas이다.

 

Paas (Platform as a Service)

클라우드 컴퓨팅 서비스 중 하나이다.
앱을 개발하거나 구현할 때, 관련 인프라를 구축하고 유지 보수하는 작업 없이 쉽게 애플리케이션을 개발, 실행, 관리할 수 있게 도와주는 플랫폼 서비스이다.

https://heroku.com/

 

Heroku

 

dashboard.heroku.com


## 회원 가입

https://id.heroku.com/login

 

Heroku | Login

 

id.heroku.com

 


 


 

## Pipeline 생성

 

Heroku에 로그인하면 Dashboard 페이지가 열린다.

 

여기서 이제 Heroku Pipeline을 생성한다.

 

 


 

 

 

Pipeline Name을 입력하고 owner는 본인 git 계정과 연동할 수 있다.

 

git 계정 연동 후 Heroku 배포 대상 Repository를 Search 하여 선택한다.

 



 

## App 생성

 

파이프라인 생성 후 Production 환경에 App을 추가한다.

 

 


 



 

## Deploy Settings

 

 

Deployment mehtod는 GitHub 선택

 

Main Branch에 Merge 되면 자동 배포를 원하기에, Automatic Deploys Enable 설정 

 



 

## DB Settings

 

MySQL 최신 버전까지 지원하는 JawsDB 선택 후  Free Plan 선택

 


 

 


 

 

 

 

 

JawsDB 설정 후 Settings Tab의 Config Vars를 확인하고 Key를 복사하여, 프로젝트 yml에 설정 추가



## yml

---

spring:
  config.activate.on-profile: heroku

  datasource:
    url: ${JAWSDB_URL}
    driver-class-name: com.mysql.cj.jdbc.Driver

  jpa:
    hibernate:
      ddl-auto: create

  sql:
    init:
      mode: always

 

 


 

## build.gradle

// Heroku 설정
jar {
	manifest {
		attributes('Main-Class': 'com.onedepth.twodepth.MainApplication')
	}
}

 


 

## Heroku Login

 

 


 

 

## Heroku Create

If you create your app via the Heroku Dashboard instead of using the CLI command,
add a remote to your local repo with heroku git:remote --app example-app.

Heroku CLI를 사용하여 진행중이기에 
git:remote --app example-app.

추가 작업 필요

 


 

## Heroku Push

 

 


 

## Procfile 생성

web: java $JAVA_OPTS -Dserver.port=$PORT -Dspring.profiles.active=heroku -jar build/libs/sample-v1.1.jar

 

 


 

## Heroku System Properties 생성

java.runtime.version=17

Project Java Version 맞추기

 

 



 

## Heroku Open

 

 

 

 

 


 

## 수동 Deploy

 


 

 

 

 

 


참고

728x90
반응형
LIST

'Develope > Deploy' 카테고리의 다른 글

[Troubleshooting] Jenkins - Git 연동  (0) 2023.02.14