미니쿠파
미니쿠파
미니쿠파
전체 방문자
1,852,407
오늘
844
어제
1,366
  • 분류 전체보기 (131)
    • 휴대폰 (17)
      • 안드로이드 (9)
      • ios (5)
    • 소프트웨어 (35)
      • 앱 (4)
      • 프로그램 (12)
      • 사이트 (5)
      • 윈도우 (7)
      • 티스토리 (7)
    • 하드웨어 (37)
      • cpu (6)
      • 그래픽카드 (2)
      • 메인보드 (6)
      • 모니터 (4)
      • 스피커 (1)
      • 라즈베리파이 (6)
    • 개발 (19)
      • flutter (4)
      • node.js (3)
      • JS, 티스토리 (4)
      • 파이썬 (2)
      • 안드로이드 (6)
    • 게임 (17)
      • 마인크래프트 (10)
      • GTAV (6)
    • 뉴스 (6)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 책임한계와 법적고지

인기 글

  • 2022년 2월 AMD, 인텔 CPU 성능⋯
    2021.02.05
    2022년 2월 AMD, 인텔 CPU 성능⋯
  • 마인크래프트 텍스쳐팩, 리소스⋯
    2020.05.05
    마인크래프트 텍스쳐팩, 리소스⋯
  • 2022년 2월 라데온, 엔비디아⋯
    2020.12.28
    2022년 2월 라데온, 엔비디아⋯
  • 윈도우10 정품인증 하는법, 안⋯
    2020.08.14
    윈도우10 정품인증 하는법, 안⋯
  • 티스토리 블로그, 웹사이트에 s⋯
    2020.09.28
    티스토리 블로그, 웹사이트에 s⋯

태그

  • GTA5
  • 적용법
  • 스펙
  • 프로그램
  • 가격
  • 성능
  • 마인크래프트
  • 티스토리
  • 모니터
  • 컴퓨터
  • 설치
  • 라즈베리파이
  • 비교
  • CPU
  • 윈도우10
  • 모드
  • 바이오스
  • 윈도우
  • 안드로이드 스튜디오
  • 리뷰

최근 댓글

  • 감사합니다. 저도 이 글보고 설⋯
    마이
  • 3월꺼는 없나요
    123
  • 가성비 수치가 따로 정리되어서⋯
    행자
  • 설치 usb를 만드는 부분을 보면⋯
    미니쿠파
  • 중요한 경고 문구 같은 건 글⋯
    tq

최근 글

  • GTA5 라디오로 듣고 싶은 노래⋯
    2022.02.14
    GTA5 라디오로 듣고 싶은 노래⋯
  • 메인보드 바이오스 업데이트 하⋯
    2021.02.26
    메인보드 바이오스 업데이트 하⋯
  • 윈도우10 안전모드로 부팅하는⋯
    2021.02.15
    윈도우10 안전모드로 부팅하는⋯
  • GTA5 온라인 팁! 빠르게 먼 거⋯
    2021.02.12
    GTA5 온라인 팁! 빠르게 먼 거⋯
  • 2022년 2월 휴대폰, AP 성능 순⋯
    2021.02.08
    2022년 2월 휴대폰, AP 성능 순⋯

티스토리

hELLO · Designed By 정상우.
미니쿠파

미니쿠파

[node.js] 깃허브 통해 무료 서버 heroku에 배포하기
개발/node.js

[node.js] 깃허브 통해 무료 서버 heroku에 배포하기

2020. 2. 26. 10:00
반응형

heroku
heroku

node.js 깃허브 통해 무료 서버 heroku에 배포하기

라즈베리파이에 서버를 돌리고 학교앱에서 급식, 일정등을 라즈베리파이 서버에서 가져오고 있습니다. 하지만 라즈베리파이는 집에 정전이 났을 때 또는 실험, 강좌, 업데이트등을 할 때 접속이 안될 수 있습니다.

이때를 대비해 무료인 heroku에 node.js를 또 올려 라즈베리파에 접속이 안될땐 heroku에 접속하여 정보를 가져오려고 합니다. heroku는 서버가 미국에 있어 속도가 좀 느리긴 하지만, 깃허브에 push시 자동으로 적용이 되어서 편리합니다.

하는법

Create new app
Create new app

heroku 홈페이지

우선 heroku 홈페이지에 접속하신 후 회원가입 또는 로그인을 해주세요. 그 후 메인화면에서 'Create new app' 버튼을 클릭해주시면 됩니다.

heroku는 무료 티어의 경우 한달에 서버를 550시간 돌릴 수 있으며, 결제 수단에 신용 카드를 추가하면 450시간을 더 줘서 총 1000시간 동안 서버를 돌릴 수 있습니다. 또한 heroku는 30분동안 아무 접속이 없으면, 잠들게 되며 잠든상태에서 접속을 하면 약간의 시간이 걸리며 깨어나게 됩니다.

이건 외부에서 특정 시간마다 서버에 접속하게 해 잠드는걸 방지할 수 있으며, 이렇게 하는 방법은 나중에 알려드리겠습니다. 또한 결제 수단에 신용 카드를 추가해 서버를 계속 돌릴 수 있습니다(한 서버만 돌리는 경우).

Create New App
Create New App

'Create new app' 버튼 클릭 시 'Create New App' 창이 나오며, 앱이름과 리전(유럽 또는 미국)을 선택해 줄 수 있습니다.

github 연결
github 연결

'Create app' 버튼을 클릭하면 이런창으로 넘어오며 각종 설정을 해줄 수 있습니다. 이 글에서는 편하게 깃허브를 통해 배포해주겠습니다. 'Github'를 클릭해주세요.

repositories 검색
repositories 검색

'Github'를 클릭하면, 'Connect to Github' 탭이 생기며 빨간 네모 탭에서 연결할 'repositories'을 검색할 수 있습니다.

const express = require('express')
const app = express()

app.listen(process.env.PORT || 8080)

heroku 포트를 process.env.PORT로 해줘야 합니다. 위 처럼 process.env.PORT || 8080로 하면 heroku에서는 process.env.PORT를, 로컬등에서 테스트할때는 8080포트로 실행할 수 있습니다.

{
  "name": "schoolserver",
  "version": "0.0.0",
  "private": true,
  "main": "app.js",
  "scripts": {
    "start": "node app.js"
  },
  "dependencies": {
    "apicache": "^1.5.2",
    "body-parser": "^1.19.0",
    "compression": "^1.7.4",
    "ejs": "^2.7.1",
    "express": "^4.17.1",
    "express-status-monitor": "^1.2.8",
    "hsts": "^2.2.0",
    "moment": "^2.24.0",
    "moment-timezone": "^0.5.27",
    "node-school-kr": "^2.2.2"
  },
  "repository": {
    "type": "git",
    "url": "https://github.com/minikupa/schoolServer"
  }
}


또한 node.js의 package에는 이런식으로 "scripts"에 "start": "node 실행할파일.js"가 있어야 합니다.

push시 자동 배포
push시 자동 배포

그 후 밑에 'Automatic deploys' 탭에서 'Enable Automatic Deploys' 버튼을 클릭해 깃허브에 push시 자동으로 배포되게 할 수 있습니다.

수동 배포

그리고 밑에 'Manual deploy' 탭에서 'Deploy Branch'를 클릭해 수동으로 배포할 수 있습니다.

view
view

이렇게 클릭하면 배포가 진행되며, 성공시 'View' 버튼을 클릭해 접속할 수 있습니다.

실행 확인
실행 확인

이런식으로 잘 나오는것을 확인할 수 있으며, 기본 도메인은 'https://이름.herokuapp.com' 입니다.

 

관련 글

node.js 간단하게 heroku sleep 방지 하기

 

node.js 간단하게 heroku sleep 방지 하기

node.js 간단하게 heroku sleep 방지 하기 heroku의 무료티어는 30분동안 접속이 없으면, sleep 모드로 들어가며, sleep 모드에서 접속을 하게 될 경우 약 10초 정도의 대기기간이 필요합니다. 이 문제는 http 모..

MK

반응형
저작자표시비영리변경금지
    '개발/node.js' 카테고리의 다른 글
    • node.js - Error: listen EADDRINUSE: address already 에러 해결
    • [node.js] 간단하게 heroku sleep 방지 하기
    Heroku, nodejs, 무료, 배포, 서버, 호스팅
    미니쿠파
    미니쿠파
    IT 블로거, 앱 개발자 미니쿠파입니다. 블로그에는 주로 컴퓨터, 프로그래밍, 프로그램, 티스토리 관련 글을 올리고 있습니다.
    댓글쓰기
    1. 포우_
      2020.02.26 10:17 신고
      잘 보고 갑니다. ㅋㅋ
      수정/삭제댓글쓰기댓글보기
    2. 호유(ho_you)
      2020.02.26 13:03 신고
      흥미롭네요~ 요새 GCP도 많이 사용하는 추세인듯 싶은데
      처음보는 서버 제공 홈페이지네요
      잘보고 갑니다!
      수정/삭제댓글쓰기댓글보기
    3. 미스터복
      2020.02.26 13:31 신고
      좋은 정보네요ㅎㅎ 잘 보고 갑니당
      수정/삭제댓글쓰기댓글보기
    4. 짱태
      2020.02.27 00:39 신고
      좋은 정보 감사드립니다! ㅎㅎ
      수정/삭제댓글쓰기댓글보기
    5. 비야
      2020.02.27 02:21
      좋은정보 감사해요
      수정/삭제댓글쓰기댓글보기
    6. ㅇㅇ
      2021.01.11 14:46
      감사합니다!!!
      수정/삭제댓글쓰기댓글보기
    다음 글
    [node.js] 간단하게 heroku sleep 방지 하기
    이전 글
    구글 안드로이드 11, R 개발자 프리뷰 1 출시, 변경점
    • 이전
    • 1
    • ···
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • ···
    • 131
    • 다음

    티스토리툴바