카카오톡 챗봇 (2)

2017. 12. 22. 02:35·Dev/Python

Kakao Chatbot x Python flask (2)

Python flask를 이용한 간단한 Kakaotalk chatbot API 서버 만들기 - 카카오 API와 heroku 배포

서론


카카오 플러스친구 API 스펙에 대해 알아보고 그에 맞는 응답처리를 작성합니다.

heroku


heroku는 웹어플리케이션을 빌드, 배포, 실행 할 수 있도록 도와주는 클라우드서비스입니다. heroku에 가입하는 방법이나 서비스에 대한 소개는 생략합니다.

로그인 후 보이는 대시보드에서 우측 상단의 new>Create new app버튼을 눌러 새로운 어플리케이션을 생성합니다. 저는 어플리케이션의 이름을 ‘kakao-reflect-chatbot’으로 하겠습니다. 생성된 어플리케이션 대시보드의 Deploy탭에 설명이 나와있지만 다시 간략하게 따라하겠습니다.

heroku CLI가 설치되어 있지 않다면 링크를 따라들어가 운영체제별 가이드라인에 따라 설치합니다.

heroku에 로그인 합니다.

$ heroku login

프로젝트 폴더로 이동한뒤 Git repository를 생성하고 heroku에 연결합니다. 각자 어플리케이션의 이름에 맞춰 ‘kakao-reflect-chatbot’ 부분을 대체합니다.

$ cd chatbot/
$ git init
$ heroku git:remote -a kakao-reflect-chatbot

heroku에 배포를 하기 이전에 heroku의 설정파일인 Procfile을 작성합니다. <process type> : <command>형식으로 heroku가 실행될 환경을 설정합니다. gunicorn의 자세한 설명은 링크로 대체합니다.

Procfile

web: gunicorn app:app --log-file -

Prockfile은 항상 최상위 폴더에 있어야하며, Procfile.txt등의 형태가 아닌 반드시 Prockfile이어야 합니다.

heroku에서 실행시 Python에서 작동하도록 환경을 적어줍니다. heroku는 3.6.3과 2.7.14 두가지만 지원합니다.

runtime.txt

python-3.6.3

작성한 코드를 Git을 통하여 heroku로 배포합니다.

$ git add app.py requirements.txt
$ git commit -am "Initial commit."
$ git push heroku master

push를 마친 뒤엔 배포된 https://<APP_NAME>.herokuapp.com/ 와 같은 어플리케이션의 주소를 알려줍니다. 물론 웹의 대시보드에서도 확인할 수 있습니다. 주소를 따라 접속하면 로컬에서 작업햇을때와 마찬가지로 ‘Hello world!’를 확인할 수 있습니다.


이 글을 따라한 뒤 디렉토리의 구조

chatbot/
|- .git/
|- venv/
|- app.py
|- requirements.txt
|- Procfile
|- runtime.txt

반응형

'Dev > Python' 카테고리의 다른 글

[하루 1시간] 실시간 OCR 번역기 만들기  (2) 2023.11.24
[SublimeText] 플러그인 만들기 - URL Decoder  (0) 2022.01.08
Python 접근제어자  (1) 2018.05.28
카카오톡 챗봇 (1)  (3) 2017.12.15
'Dev/Python' 카테고리의 다른 글
  • [하루 1시간] 실시간 OCR 번역기 만들기
  • [SublimeText] 플러그인 만들기 - URL Decoder
  • Python 접근제어자
  • 카카오톡 챗봇 (1)
우르슬라
우르슬라
    반응형
  • 우르슬라
    저장소
    우르슬라
  • 전체
    오늘
    어제
    • 분류 전체보기 (29)
      • AI (1)
      • Dev (17)
        • Python (5)
        • Javascript (3)
        • Tools (5)
        • React (1)
        • 공부 (1)
      • 메타버스2 (2)
      • NFT (0)
      • 판매용 (0)
      • IT 이슈 (2)
      • 금융 이슈 (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 미디어로그
    • 위치로그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    가상부동산
    화면 번역
    시스템프롬프트
    아젠다47
    프롬프트 강화
    ssml
    ks54
    java se programmer
    hd중공업
    랜드마크
    speech synthesis markup language
    deepseek r1-lite-preview
    metaverse2
    discord
    linyuvo ks54
    NFT
    암호화폐차트
    agenda47
    랭그래프
    oracle certified professional
    오블완
    prompt enchance
    javascript
    linyuvo
    clarksea
    deepseek
    크립토트레이딩
    wp engine 차단
    티스토리챌린지
    메타버스2
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
우르슬라
카카오톡 챗봇 (2)
상단으로

티스토리툴바