기술블로그-Django편

✅ Python 환경 설정부터 Django 프로젝트 시작까지 (feat. pyenv, Pycharm, Poetry)

Chansman 2025. 4. 29. 20:59

✅ Python 환경 설정부터 Django 프로젝트 시작까지 (feat. pyenv, Pycharm, Poetry)


📌 1️⃣ 핵심 키워드 요약

핵심 키워드 설명

Homebrew macOS, Linux용 패키지 관리자
pyenv 다양한 Python 버전을 관리할 수 있는 도구
pyenv-virtualenv pyenv의 가상환경 관리 확장 도구
Poetry 의존성 및 패키지 관리 툴
Django Python 기반의 웹 프레임워크
Pycharm JetBrains에서 만든 Python 개발 전용 IDE

🚀 2️⃣ 설치 및 설정 단계별 정리 (Chain of Thought 기법)

✔️ 단계 1: Homebrew 설치 (macOS or Linux 전용)

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
echo 'export PATH=/opt/homebrew/bin:$PATH' >> ~/.zshrc
source ~/.zshrc
brew --version  # 설치 확인

✔️ 단계 2: pyenv 및 가상환경 세팅

brew install pyenv
brew install pyenv-virtualenv

# 셸 설정 (zsh 기준)
echo 'eval "$(pyenv init --path)"' >> ~/.zprofile
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc
source ~/.zshrc

✔️ 단계 3: Python 버전 설치 및 가상환경 생성

pyenv install 3.12.2
pyenv virtualenv 3.12.2 pycharm_study
pyenv local pycharm_study

💡 (pycharm_study) 라는 접두사가 경로에 붙으면 가상환경이 성공적으로 활성화된 것!

✔️ 단계 4: alias 설정 (선택사항)

vi ~/.zshrc
# 아래 내용 삽입
alias python="python3"
alias pip="pip3"
ESC -> :wq -> source ~/.zshrc

🔧 3️⃣ Pycharm 설정 방법

① Pycharm 설치

② Pycharm에서 가상환경 설정

File > Settings > Project: [프로젝트명] > Python Interpreter > Add Interpreter
→ Add Local Interpreter → Existing 환경 → pyenv 가상환경 선택

⚙️ 4️⃣ Django 설치 및 프로젝트 시작

pip install django
# 또는 poetry 사용 시
poetry init
poetry add django

✅ Django 프로젝트 생성

django-admin startproject config .
python3 manage.py runserver

🌐 5️⃣ Django 간단한 라우팅 예제 (config/urls.py)

from django.contrib import admin
from django.urls import path
from django.http import HttpResponse

def index(request):
    return HttpResponse('<h1>hello</h1>')

def book_list(request):
    return HttpResponse('<br>'.join([f'book {i}' for i in range(10)]))

def book(request, num):
    return HttpResponse(f'book {num}번 페이지입니다')

def language(request, lang):
    return HttpResponse(f'<h1>{lang} 언어 페이지입니다')</HttpResponse>

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', index),
    path('book_list', book_list),
    path('book_list/<int:num>/', book),
    path('language/<str:lang>/', language),
]

📌 6️⃣ Django 구조 요약

파일 역할

config/settings.py 전체 프로젝트 설정
config/urls.py URL routing 설정
views.py 사용자 요청 처리 로직
models.py DB 구조 설정
templates/ HTML 템플릿 관리
manage.py Django 프로젝트 관리 명령어 진입점

🔥 7️⃣ 실전 꿀팁 & 고급 팁

✅ Poetry를 쓰면 requirements.txt 대신 pyproject.toml로 모든 의존성을 자동 관리합니다. ✅ pyenv virtualenv는 폴더 기반이므로 프로젝트별로 확실하게 격리된 환경을 구성할 수 있습니다. ✅ Pycharm 설정 시 interpreter가 꼬일 경우, ~/.pyenv/versions/가상환경명/bin/python 을 수동 선택하세요! ✅ python manage.py runserver로 서버 구동 중 8000포트가 막혀있다면 python manage.py runserver 0.0.0.0:8000 으로 변경 가능!


🧠 8️⃣ 마무리 정리

  • pyenv, poetry, django, pycharm은 각각 역할이 다르며 조합하면 매우 강력한 개발 환경 구축 가능
  • 하나씩 설치하며 각 도구의 역할을 익히고 나면, Python 프로젝트를 보다 모듈화 + 격리된 방식으로 효율적으로 진행 가능

📌 이제 본격적으로 Django 웹 프로젝트 개발을 시작해볼까요?


📝 이 글은 Pyenv + Pycharm + Poetry + Django 기반 개발 환경 구축을 위한 실전 가이드입니다.

문의나 궁금한 점은 댓글로 남겨주세요 :)