본문 바로가기
Artificial Intelligence/60. Python

[PYTHON] Django 설치 및 프로젝트 세팅 완벽 가이드

by Papa Martino V 2025. 7. 21.
728x90

Django 설치 및 프로젝트 세팅 완벽 가이드
[PYTHON] Django 설치 및 프로젝트 세팅

 

Django는 Python 기반의 고급 웹 프레임워크로, 빠르고 안전하며 확장성 높은 웹 애플리케이션을 만들 수 있도록 도와줍니다. 하지만 많은 초보 개발자들이 Django 설치 과정에서 어려움을 겪습니다. 이 글에서는 실무에서 사용하는 정석적인 Django 프로젝트 세팅 방법을 소개하고, 처음부터 운영 가능한 개발 환경을 구성하는 데 필요한 모든 단계를 상세히 안내합니다.

1. 가상환경 구성의 중요성

Django 설치는 반드시 가상환경을 사용해야 합니다. 가상환경은 프로젝트마다 독립된 파이썬 패키지 구성을 가능하게 해주며, 충돌 방지와 배포 용이성 측면에서 필수적인 도구입니다.


# 가상환경 생성
python -m venv venv

# 가상환경 활성화
# Windows
venv\Scripts\activate
# macOS / Linux
source venv/bin/activate
  

2. Django 설치

Django는 pip를 통해 설치할 수 있으며, 공식 PyPI 저장소에서 최신 버전을 가져옵니다.


pip install django
  

설치 완료 후, 버전 확인으로 정상 설치 여부를 확인합니다.


python -m django --version
  

3. Django 프로젝트 생성

기본 프로젝트를 다음과 같이 생성합니다.


django-admin startproject config .
  

점(.)을 붙이는 이유는 현재 디렉토리에서 시작하기 위함이며, 루트 디렉토리의 중복 방지를 위해 권장되는 방식입니다.

4. 개발 서버 실행


python manage.py runserver
  

http://127.0.0.1:8000 접속 시, Django의 환영 메시지가 보이면 설치 성공입니다.

5. 프로젝트 디렉토리 구조 이해

디렉토리/파일 설명
config/ 설정 파일 포함 (settings.py, urls.py 등)
manage.py Django 프로젝트의 엔트리 포인트
venv/ 가상환경 패키지 디렉토리
__init__.py Python 패키지임을 알려주는 초기화 파일

6. 로컬 개발을 위한 필수 설정

  • DEBUG = True (개발 환경에서만)
  • ALLOWED_HOSTS = ['*'] 또는 로컬 도메인 등록
  • Time Zone: 'Asia/Seoul'
  • Static/Media 파일 경로 설정

7. App 생성 및 등록

하나의 프로젝트는 여러 App으로 구성될 수 있으며, App은 기능 단위의 독립 모듈입니다.


python manage.py startapp main
  

main App을 config/settings.py에 등록


INSTALLED_APPS = [
    ...
    'main',
]
  

8. 초기 마이그레이션

Django는 모델(Model) 기반으로 DB를 자동 생성합니다. 프로젝트 초기에는 반드시 아래 명령어를 실행합니다.


python manage.py makemigrations
python manage.py migrate
  

9. 관리자 계정 생성


python manage.py createsuperuser
  

생성한 계정으로 /admin 페이지에 접속해 기본 관리자 UI를 확인할 수 있습니다.

10. Django 환경세팅 체크리스트

설정 항목 기본값 개발 추천값
DEBUG False True
ALLOWED_HOSTS [] ['localhost', '127.0.0.1']
LANGUAGE_CODE 'en-us' 'ko-kr'
TIME_ZONE 'UTC' 'Asia/Seoul'
DATABASE SQLite PostgreSQL (운영환경)

11. 장고 설정 확장 팁

  • 환경 변수(.env)와 python-decouple로 설정 분리
  • settings.py를 base/dev/prod로 분리하여 운영환경 대응
  • 디버깅 도구 django-debug-toolbar 설치
  • 정적 파일: STATICFILES_DIRSSTATIC_ROOT 이해 필수

12. 마무리: 탄탄한 세팅이 안정된 프로젝트의 시작

Django를 단순히 설치하고 실행하는 것만으로는 실전 개발에 적합하지 않습니다. 초기에 환경 구성을 표준화하고 체계화하면, 유지보수성과 협업 효율성이 비약적으로 증가합니다. 이 튜토리얼을 따라가며 하나하나 설정해보면 Django 기반 웹 애플리케이션 개발의 첫걸음을 가장 견고하게 디딜 수 있습니다.

참고 출처

728x90