Django는 Python으로 웹 애플리케이션을 개발하기 위한 강력한 프레임워크입니다. 프로젝트를 생성하고 서버를 실행하는 과정에서 가상환경을 사용하는 것이 매우 중요합니다. 이번 글에서는 Django를 가상환경에서 설정하고 실행하는 과정을 단계별로 자세히 설명합니다. 또한, 0.0.0.0:8000으로 서버를 실행하는 이유도 함께 알아봅니다.
1. 가상환경 활성화
Django 프로젝트는 가상환경 안에서 설정하고 실행하는 것이 가장 좋은 방법입니다. 이를 통해 프로젝트별 독립적인 Python 환경을 유지할 수 있습니다.
가상환경 활성화의 내용은 해당 링크에 자세히 설명되어 있으니 확인 후 진행 해주세요.
활성화되면 터미널 프롬프트 앞에 가상환경 이름이 표시됩니다:
(myenv) username@MacBook ~%
위 내용중 "(myenv)" 가 앞에 있으면 가상환경 상태이며, 앞으로의 진행은 가상환경에서 진행됩니다.
2. Django 설치
가상환경이 활성화된 상태에서 Django를 설치합니다.
(myenv) username@MacBook ~% pip install django
설치가 완료되면 Django 버전을 확인하여 올바르게 설치되었는지 확인합니다:
(myenv) username@MacBook ~% django-admin --version
출력 예시:
5.0
3. Django 프로젝트 생성
가상환경이 활성화된 상태에서 Django 프로젝트를 생성합니다.
프로젝트 생성 명령어
django-admin startproject myproject
위 명령어를 실행하면 myproject라는 이름의 프로젝트가 생성됩니다.
프로젝트 디렉터리 구조
myproject/
manage.py
myproject/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
• manage.py: 프로젝트 관리 명령어를 실행하는 스크립트.
• settings.py: 프로젝트의 설정 파일.
• urls.py: URL 라우팅 설정 파일.
4. Django 앱 생성
Django는 기능별로 **앱(App)**을 생성하여 관리합니다.
앱 생성 명령어
python3 manage.py startapp myapp
위 명령어를 실행하면 myapp이라는 이름의 앱이 생성됩니다.
앱 등록하기
생성한 앱을 settings.py 파일의 INSTALLED_APPS에 추가합니다.
myproject/settings.py:
INSTALLED_APPS = [
...
'myapp',
]
5. 로컬 서버 실행
가상환경이 활성화된 상태에서 Django 로컬 서버를 실행합니다.
기본 서버 실행
python3 manage.py runserver
• Django는 기본적으로 127.0.0.1:8000에서 서버를 실행합니다.
• 실행 중인 서버는 터미널에 다음과 같은 메시지를 출력합니다:
Watching for file changes with StatReloader
Performing system checks...
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
6. 브라우저에서 접속
브라우저를 열고 주소창에 http://127.0.0.1:8000/를 입력합니다. Django의 기본 화면이 나타나며, 서버가 정상적으로 실행 중임을 확인할 수 있습니다.
기본 페이지 예시
Django의 기본 페이지는 다음과 같은 메시지를 보여줍니다:
The install worked successfully! Congratulations!
7. 0.0.0.0:8000으로 서버 실행하기
기본적으로 python3 manage.py runserver 명령은 127.0.0.1:8000에 서버를 실행합니다. 하지만 다른 네트워크 기기에서 이 서버에 접근하려면 IP를 0.0.0.0으로 변경해야 합니다.
0.0.0.0:8000으로 서버 실행
python3 manage.py runserver 0.0.0.0:8000
0.0.0.0 사용 이유
1. 네트워크 외부 접근 허용
• 127.0.0.1은 로컬 머신에서만 접근할 수 있는 IP입니다.
• 0.0.0.0은 모든 네트워크 인터페이스를 통해 접근을 허용합니다. 즉, 같은 네트워크에 연결된 다른 기기에서도 서버에 접근할 수 있습니다.
2. 테스트 및 디버깅
• 로컬 머신 외부에서 서버를 테스트하거나 디버깅할 때 유용합니다.
• 예를 들어, 모바일 기기에서 로컬 서버를 확인하거나 팀원이 같은 네트워크에서 작업 중인 서버에 접속해야 할 때 사용합니다.
서버에 접속하는 방법
0.0.0.0으로 서버를 실행하면, 서버가 실행된 머신의 IP 주소를 사용하여 브라우저에서 접속할 수 있습니다.
서버의 IP 주소를 확인하려면 터미널에서 다음 명령어를 실행합니다:
ifconfig | grep inet
출력된 IP 주소를 이용해 브라우저에서 http://<IP>:8000/에 접속합니다.
8. 서버 실행 시 발생할 수 있는 문제 해결
포트 변경하기
만약 8000 포트가 이미 사용 중이라면 다른 포트로 실행할 수 있습니다:
python3 manage.py runserver 0.0.0.0:8080
마무리
Django 프로젝트 생성과 실행 과정에서 가상환경을 사용하는 이유는 독립적이고 안전한 개발 환경을 유지하기 위함입니다. 특히 127.0.0.1과 0.0.0.0의 차이를 이해하면 로컬 서버를 더 효율적으로 활용할 수 있습니다. 이제 Django와 함께 웹 애플리케이션 개발을 시작해보세요!
'macOS > Mac Mini로 서버 만들기' 카테고리의 다른 글
[프로젝트 생성 - 1] Python 가상환경 설정 완벽 가이드 (2) | 2024.12.18 |
---|---|
[프로젝트 생성 - 0] Django 프로젝트 생성하기 (1) | 2024.12.18 |
[환경 설정 - 3] macOS에서 .zshrc 파일로 Python 경로 설정하기 (0) | 2024.12.02 |
[환경 설정 - 2] 파이썬 설치 (0) | 2024.11.30 |
[환경 설정 - 1] Homebrew 설치. (1) | 2024.11.29 |