Skip to content

MJSEC-MJU/MJSEC-BOJ-Contest-3rd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MJSEC_BOJ

프로젝트 소개

MJSEC 백준 프로그래밍 대회를 위한 웺사이트 입니다.

MJSEC_CTF_CHALLENGE

주요 기능

  • 다이나믹 스코어링 시스템: 실시간으로 점수를 계산하여 참가자들에게 즉각적인 피드백 제공
  • AJAX 기반 리더보드: fetch API를 활용하여 실시간으로 업데이트되는 리더보드 구현
  • 문제 제출 및 검증 시스템: python requests 모듈을 활용하여 solved ac api를 통한 검증시스템 구현
  • 사용자 및 팀 관리: 참가자를 관리자 페이지에서 효율적으로 관리할 수 있는 기능
항목 뱃지
OS Ubuntu
서버 Google Cloud
웹 프레임워크 Django
데이터베이스 SQLite
배포 도구 Docker
Docker Compose
웹 서버 Gunicorn
Nginx
버전 관리 GitHub

서버 설치 단계

  1. 시스템 패키지 업데이트 및 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
  2. 프로젝트 클론:

    git clone https://github.com/MJSEC-MJU/MJSEC_BOJ.git
    cd MJSEC_BOJ/boj_contest

가상환경 설정

  1. Python 가상환경 설치:

    sudo apt-get install python3-venv
    python3 -m venv venv
    source venv/bin/activate
  2. Secret Key 생성:

    python -c 'import secrets; print(secrets.token_urlsafe(50))'

    생성된 Secret Key를 .env 파일의 SECRET_KEY 환경 변수에 추가합니다.

  3. .env 파일에서 ALLOWED_HOSTS 설정 변경:

    DEBUG=0
    DJANGO_ALLOWED_HOSTS=127.0.0.1,localhost,도메인주소
    DJANGO_SECRET_KEY= 키값

도커 컨테이너 실행

  1. Docker Compose 빌드 및 실행:
    sudo docker-compose build
    sudo docker-compose up -d

이제 프로젝트가 Docker 컨테이너에서 실행됩니다.

도커 컨테이너에서 관리자 계정생성

  1. Docker 컨테이너 진입 및 생성
     sudo docker-compose exec web /bin/sh
     python manage.py createsuperuser

About

MJSEC BOJ Contest

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors