웹 개발을 시작할 때 가장 많이 사용되는 프레임워크 중 하나가 바로 **장고(Django)**다. 파이썬 기반의 장고는 강력한 보안 기능과 빠른 개발 속도 덕에 많은 개발자가 선택한다. 이번 글에서는 우분투(Ubuntu) 환경에서 장고를 설치하고 프로젝트를 시작하는 방법을 단계별로 정리한다.
특히 시놀로지 NAS의 Docker Container로 우분투를 설치한 경우에도 그대로 적용할 수 있다.
1. Python 및 필수 패키지 업데이트
장고는 파이썬 기반이므로 먼저 Python 환경 확인이 필요하다.
터미널에서 다음 명령을 실행한다.
sudo apt update && sudo apt upgrade -y
sudo apt install -y python3 python3-pip python3-venv
설치 확인
python3 --version
pip3 --version
정상적으로 버전이 표시되면 다음 단계로 진행한다.
2. 프로젝트용 가상환경 구성
여러 프로젝트를 운영할 때 패키지 충돌을 방지하기 위해 가상환경을 사용하는 것이 좋다.
예시 디렉토리 생성
mkdir ~/django-app
cd ~/django-app
가상환경 생성 및 활성화
python3 -m venv venv
source venv/bin/activate
가상환경이 활성화되면 프롬프트 앞에 (venv) 표시가 나타난다.
3. Django 설치
pip을 이용해 장고 설치
pip install django
설치 확인
django-admin --version
4. 장고 프로젝트 생성 및 실행
프로젝트 생성
django-admin startproject mysite .
위 명령을 실행하면 현재 디렉토리에 장고 프로젝트 파일이 생성된다.
기본 서버 실행
python manage.py runserver 0.0.0.0:8000
브라우저에서 접속
http://서버IP:8000/
정상적으로 장고 환영 페이지가 보인다면 설치가 완료된 것이다.
5. 방화벽 및 포트 설정
Docker 또는 서버에서 외부 접속이 가능하도록 포트를 열어야 한다.
예시(UFW 사용 시)
sudo ufw allow 8000/tcp
시놀로지 Docker 환경에서는 포트 포워딩 8000 → 8000 설정 필요하다.
6. 기본 앱 생성 및 데이터베이스 초기화
간단한 앱 생성
python manage.py startapp main
DB 마이그레이션 실행
python manage.py migrate
관리자 계정 생성
python manage.py createsuperuser
마무리
이제 우분투 환경에서 장고 개발을 위한 기본 구조가 준비되었다. 다음 단계에서는 nginx, gunicorn을 연결하여 실 서비스 배포, HTTPS 적용, PostgreSQL 연동 등의 설정을 진행할 수 있다.
웹 개발을 처음 시작하는 사용자도 이 과정을 따라오면 손쉽게 장고 프로젝트 구축이 가능하다. 다음 글에서는 Docker + Django + Nginx + PostgreSQL을 통한 안정적인 운영 환경 구축 방법을 소개할 예정이다.