Post

Render.com에서 배포하기

render 무료티어로 배포시켜보자

Render.com에서 배포하기

render를 선택한 이유

  • 웹서비스 네이밍으로 주소 표시 가능(pythonanywhere는 아이디가 표시되고 변경을 하고 싶으면 결제해야..)
  • 깃허브 레포지토리 연결 후 커밋 업데이트마다 자동 배포 가능(CI/CD)
  • 손쉬운 배포 설정
  • 데이터베이스(render는 postgreSQL)를 따로 사용하지 않거나 많은 I/O가 없을 때 굉장히 알맞게 사용 할 수 있을 듯 해서.

Render 설정 과정

render_index

우측 상단 대시보드 -> 로그인창

로그인창

원하는 서비스로 로그인( 필자는 깃허브로 로그인 하였음)

대시보드

대시보드에 이동한 뒤에는 project를 생성해줘야 한다. create new project를 클릭

프로젝트생성

저는 이미 프로젝트 생성을 하였기 때문에 새로운 프로젝트를 만들수가 없군요.. (pro버전 부터 새로운 프로젝트 폴더 사용가능)

서비스생성#1

toyProj라는 프로젝트를 만들고 서비스를 생성하면 된다.

화면에 서비스를 생성하면 보이듯이 kuphilGraduate라는 서비스와 status(동작상태), runtime(언어), region(서버지역), deployed(배포된 시간)이 뜬다.

production란에 create new service를 눌러서 새로운 서비스를 생성합시다.

서비스생성#2

저는 django로 동적 웹앱 사이트를 만들었기 때문에 Web Services를 선택

서비스생성#3

Git Provider/ Public Git Repository / Existing Image 중에 Git Provider에서 github를 선택해주면 github와 연동할수 있게 되고 원하는 repository를 선택할 수 있다.

원하는 repository를 선택하고 저장하면 이미지와 같이 해당 레포지토리가 표시되고 클릭하면

서비스생성#4

해당 깃험 레포지토리가 연결되고
Name -> 웹서비스 이름
language -> python3 선택
Branch -> 레포지토리 커밋시에 자동으로 재배포가 되는데 그때 연결하고 사용할 branch를 선택

서비스생성#5 Region -> 서비스 지역을 선택해야하는데 한국은 없어서 그나마 같은 asia인 singapore 선택

서비스생성#6 Root Directory -> pass
Build Command -> pass (build.sh 같은 파일로 배포 설정을 실행해도 되지만 하지 않음)
❗️Start Command -> gunicorn wsgi파일이 있는 경로를 확실히 설정. (안그러면 배포오류)

  • django는 wsgi파일이 앱 메인폴더에 자동으로 생성되어 있다.

서비스생성#7

Instance Type -> Free

서비스생성#8

Environment Variables -> .env 파일을 업로드하거나 환경변수를 등록할 수 있다.

이제 설정이 끝났으면 [Deploy Web Services] 클릭!

서비스생성#9

그럼 자동으로 깃허브 레포지토리에 등록된 프로젝트 파일을 따라 배포가 진행된다.
배포가 끝나고 Your service is live 🎉 라는 문구가 뜨면 성공!

  • 배포가 실패하면 로그기록이 뜨면서 실패했다고 뜬다. 로그기록을 잘 보고 오류를 찾아서 해결하면 된다.( 전 wsgi 실행 커맨드를 잘못 적었었습니다..)

배포 사이트 주소

https://kuphilgraduate.onrender.com ⛓️
배포를 성공한 사이트의 페이지 링크 🎉

초기에 사이트에 진입할 때는 약 30~1분 사이의 시간이 걸린다.
그 이후에는 진입이 바로바로 잘 된다.(15분간 서버가 사용되지 않을 시 서버가 자동종료)

분석 프로그램 처럼 많은 입출력이 필요없고 데이터베이스를 소요하지 않는 웹 사이트를 배포하고 싶다면 render를 무료배포 사이트로 추천한다.

This post is licensed under CC BY 4.0 by the author.