Byeonguk Kim

안녕하세요. 29살의 조금은 늦은 나이로 새롭게 개발자로 시작하는 신입 개발자입니다. 포트폴리오 [https://deaguowl.github.io]

배포 01. heroku를 활용한 배포(bookmark)

09 May 2019 » 배포

2019.05.09 heroku를 활용한 북마크 배포하기

헤로쿠를 통한 북마크 앱 배포하기

헤로쿠 배포 순서

  1. 헤로쿠 설치하기 [The Heroku CLIHeroku Dev Center](https://devcenter.heroku.com/articles/heroku-cli)
  2. 헤로쿠 추가 필수 모델 설치하기
  3. requirements.txt 파일만들기
  4. 모듈 설정 : setting.py
  5. Procfile 만들기
  6. runtime.txt 만들기
  7. gitignore 만들기
  8. 헤로쿠에 업로드
  9. 헤로쿠 초기화

1. 헤로쿠 설치하기

  1. [The Heroku CLIHeroku Dev Center] 접속(https://devcenter.heroku.com/articles/heroku-cli)
  2. 터미널 설치 명령어
brew tap heroku/brew && brew install heroku 
  1. 설치 확인
    1. 터미널 : heroku –version

2. 헤로쿠 추가 모듈 설치하기

  1. 추가 모듈 설치 (pip install 모듈명)
    1. dj-database-url : 데이터베이스 관련 옵션을 변수로 쉽게 접근할 수 있게 해주는 유틸리티
    2. gunicorn : wsgi용 미들웨어 - 웹서버와 장고 사이의 다리 역할
    3. whitenoise : static 파일 서빙용 미들웨어
    4. psycopg2-binary : postgreSQL용 드라이버

3. requirements.txt 파일 만들기

freeze > requirements.txt

4. 모듈 설정

  1. DEBUG = False
  2. ALLOWED_HOST = [‘*’]
  3. 미들 웨어 추가
    1. 정적파일을 사용하기 위해 미들웨어를 추가하고 STATIC ROOT를 추가해줘야 한다.
    2. ‘whitenoise.middleware.WhiteNoiseMiddleware’
  4. STATIC ROOT 추가 : 스태틱 파일을 저장할 경로 설정
    1. STATIC_ROOT = os.path.join(BASE_DIR, ‘staticfiles’)
  5. 테이터 베이스 옵션 추가(헤로쿠가 알아서 해주는데 무엇을 해줄지 적는다.)
    1. DATABASES 아래에 추가

B43A59AA-6CFC-4541-809D-06DB07F83821

5. Procfile 만들기

  • 최상단에 Procfile 생성
  • web : gunicorn config.wsgi 입력

6. runtime.txt 만들기

  • 최상단에 runtime.txt 만들기
  • python-3.7.0 적어주기

7. gitignore 만들기

*.pvc
*~
/venv
__pycache__
db.sqlite3
.DS_Store

8. 헤로쿠에 업로드

  1. 헤로쿠 로그인
    1. 터미널 : heroku login
  2. git init
  3. git add -A
  4. git commit -m “heroku commit”
  5. heroku create django-bookmarkproject
  6. git push heroku master

9. 헤로쿠 초기화

  1. 헤로쿠 초기화
    1. 데이터베이스 초기화
      1. heroku run python manage.py migrate
    2. 슈퍼 유저 생성
      1. heroku run python manage.py createsuperuser
  2. 헤로쿠 열어보기
    1. heroku open