Skip to content

Latest commit

 

History

History
59 lines (52 loc) · 2.17 KB

readme.md

File metadata and controls

59 lines (52 loc) · 2.17 KB

최하하 웹사이트

django로 만든 게시판 웹사이트

** 바로가기 **

index page

개요

  • 글을 작성하고 댓글을 달 수 있는 게시판 웹사이트
  • 웹사이트의 컨셉과 디자인은 침착맨의 개인 사이트인 침하하에서 가져왔다
  • 로그인, 좋아요 및 댓글, 프로필 설정, 게시글 정렬 및 검색 기능 등이 있다

기술 스택

  • django (python)으로 웹 애플리케이션의 전반적인 로직 구현
  • 데이터베이스로는 sqlite를 사용
  • aws의 ec2 인스턴스로 서버를 만들었고 route53을 통해 dns 레코드를 구성함
  • nginx 서버를 구성하였고 동적 요청을 처리하기 위한 wsgi서버로 gunicorn을 사용함
  • google의 OAuth 2.0을 통한 로그인과 계정 연동

배운 점

  • http 통신과 dns 등 네트워크 개념
  • django 프레임워크 사용 방법과 model을 활용하여 게시판 구현
  • 서버의 실행 환경 구축 방법
  • aws의 다양한 서비스 사용

설치 및 사용 방법

초기 설정

  1. ec2 ubuntu 인스턴스에 리포지토리 클론
git clone https://github.com/linklingj/choihaha.git
  1. 의존성 설치: python, django, markdown, pillow, python-decouple, djanog-allauth, google-auth
pip install django nginx markdown pillow python-decouple djanog-allauth google-auth
  1. .env 파일 설정:
DJANGO_SECRET_KEY = ""
GOOGLE_CLIENT_ID = ""
GOOGLE_CLIENT_SECRET = ""
REDIRECT_URI = ""
  1. service 파일 실행
/etc/systemd/system$ sudo systemctl start mysite.service

유지 보수

  • ngnix 설정 파일 경로: /etc/nginx/sites-available/mysite
  • service 파일 경로: /etc/systemd/system/mysite.service
  • venv 실행: ~/venvs/mysite.sh
  • 개발 환경에서는 ~/choihaha/mysite/config/settings/prod.py 설정 파일 사용
  • 주기적 설정
  1. 도메인 구매: 24년 11월 기준 2년마다
  2. certbot을 사용한 도메인 ssl 인증서 발급: 24년 12월 기준 90일 유효
sudo certbot --nginx -d choihaha.com
  1. google OAuth2 설정 최신화: 구글 클라우드 콘솔