Skip to content

linklingj/choihaha

Folders and files

NameName
Last commit message
Last commit date

Latest commit

5ff0a1c · Dec 24, 2024

History

23 Commits
Dec 21, 2024
Dec 24, 2024
Dec 21, 2024
Dec 3, 2024
Jul 18, 2024
Nov 2, 2024
Jul 18, 2024
Jul 18, 2024
Dec 24, 2024

Repository files navigation

최하하 웹사이트

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 설정 최신화: 구글 클라우드 콘솔

About

주인장의 게시판 웹사이트

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published