MJSEC 백준 프로그래밍 대회를 위한 웺사이트 입니다.
- 다이나믹 스코어링 시스템: 실시간으로 점수를 계산하여 참가자들에게 즉각적인 피드백 제공
- AJAX 기반 리더보드: fetch API를 활용하여 실시간으로 업데이트되는 리더보드 구현
- 문제 제출 및 검증 시스템: python requests 모듈을 활용하여 solved ac api를 통한 검증시스템 구현
- 사용자 및 팀 관리: 참가자를 관리자 페이지에서 효율적으로 관리할 수 있는 기능
| 항목 | 뱃지 |
|---|---|
| OS | |
| 서버 | |
| 웹 프레임워크 | |
| 데이터베이스 | |
| 배포 도구 | |
| 웹 서버 | |
| 버전 관리 |
-
시스템 패키지 업데이트 및 Docker 설치:
sudo apt update sudo apt install docker.io sudo systemctl enable --now docker sudo curl -L "https://github.com/docker/compose/releases/download/v2.21.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose docker-compose --version
-
프로젝트 클론:
git clone https://github.com/MJSEC-MJU/MJSEC_BOJ.git cd MJSEC_BOJ/boj_contest
-
Python 가상환경 설치:
sudo apt-get install python3-venv python3 -m venv venv source venv/bin/activate -
Secret Key 생성:
python -c 'import secrets; print(secrets.token_urlsafe(50))'생성된 Secret Key를
.env파일의SECRET_KEY환경 변수에 추가합니다. -
.env파일에서ALLOWED_HOSTS설정 변경:DEBUG=0 DJANGO_ALLOWED_HOSTS=127.0.0.1,localhost,도메인주소 DJANGO_SECRET_KEY= 키값
- Docker Compose 빌드 및 실행:
sudo docker-compose build sudo docker-compose up -d
이제 프로젝트가 Docker 컨테이너에서 실행됩니다.
- Docker 컨테이너 진입 및 생성
sudo docker-compose exec web /bin/sh python manage.py createsuperuser