Django는 개발자가 안전하고 확장 가능하며 유지 관리가 용이한 웹 애플리케이션을 구축할 수 있도록 설계된 무료 오픈 소스 고급 Python 웹 프레임워크입니다.
Django 설치 방법은 필요에 따라 다릅니다. Pip을 사용하여 시스템 전체에 설치하거나 Python 가상 환경에 설치할 수 있습니다.
또한 Django 패키지는 공식 Ubuntu 저장소에 포함되어 있으며 app 패키지 관리자를 사용하여 설치할 수 있습니다. 이는 Ubuntu 18.04에 Django를 설치하는 가장 쉬운 방법이지만 가상 환경에 설치하는 것만큼 유연하지는 않습니다. 또한 저장소에 포함된 버전은 항상 최신 버전의 Django보다 뒤쳐집니다.
Python 가상 환경의 주요 목적은 서로 다른 Python 프로젝트를 위한 격리된 환경을 만드는 것입니다. 이렇게 하면 다른 Django 설치에 영향을 줄 걱정 없이 단일 컴퓨터에 여러 개의 서로 다른 Django 환경을 가질 수 있으며 프로젝트별로 특정 버전의 모듈을 설치할 수 있습니다. 글로벌 환경에 Django를 설치하면 컴퓨터에 Django 버전을 하나만 설치할 수 있습니다.
Ubuntu 18.04 Django 설치
다음 섹션에서는 Ubuntu 18.04의 Python 가상 환경에 Django를 설치하는 방법에 대한 단계별 지침을 제공합니다.
Python 3, venv 설치
Ubuntu 18.04는 기본적으로 Python 3.6과 함께 제공됩니다. 다음을 입력하여 시스템에 Python 3이 설치되어 있는지 확인할 수 있습니다.
python3 -V
# Python 3.6.6
Python 3.6부터는 vev 모듈을 사용하는 것이 좋습니다. vv 모듈을 제공하는 python3-venv 패키지를 설치하려면 다음 명령을 실행합니다.
sudo apt install python3-venv
모듈이 설치되면 Django 애플리케이션을 위한 가상 환경을 생성할 준비가 되었습니다.
가상 환경 생성
먼저 Python 3 가상 환경을 저장할 디렉토리로 이동합니다. 사용자의 홈 디렉토리 또는 사용자에게 읽기 및 쓰기 권한이 있는 다른 디렉토리일 수 있습니다.
Django 응용 프로그램에 대한 새 디렉터리를 생성하고 해당 디렉터리로 이동하십시오.
mkdir my_django_app
cd my_django_app
디렉토리 내에서 다음 명령을 실행하여 새 가상 환경을 생성합니다.
python3 -m venv venv
위의 명령은 venv라는 디렉토리를 생성합니다. 여기에는 Python 바이너리, Pip 패키지 관리자, 표준 Python 라이브러리 및 기타 지원 파일의 복사본이 포함됩니다. 가상 환경에 원하는 이름을 사용할 수 있습니다.
이 가상 환경 사용을 시작하려면 활성화 스크립트를 실행하여 가상 환경을 활성화해야 합니다.
source venv/bin/activate
활성화되면 가상 환경의 bin 디렉터리가 $PATH 변수 시작 부분에 추가됩니다. 또한 셸의 프롬프트가 변경되고 현재 사용 중인 가상 환경의 이름이 표시됩니다. 우리의 경우에 그것은 venv입니다.
Django 설치
이제 가상 환경이 활성화되었으므로 Python 패키지 관리자 pip을 사용하여 Django를 설치할 수 있습니다.
pip install django
가상 환경에서 pip3 대신 명령 pip을 사용하고 python3 대신 python을 사용할 수 있습니다.
설치를 확인하려면 다음 명령을 사용하여 Django 버전을 인쇄합니다.
python -m django --version
사용자의 Django 버전이 여기에 표시된 버전과 다를 수 있습니다.
Django 프로젝트 생성
mydjangoapp라는 새 Django 프로젝트를 생성하려면 django-admin 명령줄 유틸리티를 사용하십시오.
django-admin startproject mydjangoapp
위의 명령은 현재 디렉터리에 mydjangoapp 디렉토리를 생성합니다.
tree mydjangoapp/
# mydjangoapp/
# |-- manage.py
# `-- mydjangoapp
# |-- __init__.py
# |-- settings.py
# |-- urls.py
# `-- wsgi.py
해당 디렉토리 내에 manage.py이라는 프로젝트를 관리하기 위한 기본 스크립트와 데이터베이스 구성, Django 및 애플리케이션별 설정을 포함한 다른 디렉토리가 있습니다.
데이터베이스를 마이그레이션하고 관리 사용자를 생성하겠습니다.
먼저 mydjangoapp 디렉토리로 이동합니다.
cd mydjangoapp
기본적으로 Django는 SQLite 데이터베이스를 사용합니다. 프로덕션 애플리케이션의 경우 PostgreSQL, MariaDB, Oracle 또는 MySQL 데이터베이스를 사용할 수 있습니다.
다음 명령을 실행하여 데이터베이스를 마이그레이션합니다.
python manage.py migrate
# Operations to perform:
# Apply all migrations: admin, auth, contenttypes, sessions
# Running migrations:
# Applying contenttypes.0001_initial... OK
# Applying auth.0001_initial... OK
# Applying admin.0001_initial... OK
# Applying admin.0002_logentry_remove_auto_add... OK
# Applying admin.0003_logentry_add_action_flag_choices... OK
# Applying contenttypes.0002_remove_content_type_name... OK
# Applying auth.0002_alter_permission_name_max_length... OK
# Applying auth.0003_alter_user_email_max_length... OK
# Applying auth.0004_alter_user_username_opts... OK
# Applying auth.0005_alter_user_last_login_null... OK
# Applying auth.0006_require_contenttypes_0002... OK
# Applying auth.0007_alter_validators_add_error_messages... OK
# Applying auth.0008_alter_user_username_max_length... OK
# Applying auth.0009_alter_user_last_name_max_length... OK
# Applying sessions.0001_initial... OK
데이터베이스가 마이그레이션되면 Django 관리 인터페이스를 사용할 수 있도록 관리 사용자를 생성합니다.
관리자 사용자의 사용자 이름, 전자 메일 주소 및 암호를 묻는 메시지가 표시됩니다.
python manage.py createsuperuser
# Username (leave blank to use 'linuxize'): admin
# Email address: admin@linuxize.com
# Password:
# Password (again):
# Superuser created successfully.
개발 서버 테스트
관리를 사용하여 개발 웹 서버를 시작합니다.
python manage.py runserver
# Performing system checks...
#
# System check identified no issues (0 silenced).
# October 20, 2018 - 11:16:28
# Django version 2.1.2, using settings 'mydjangoapp.settings'
# Starting development server at http://127.0.0.1:8000/
# Quit the server with CONTROL-C.
가상 시스템에 Django를 설치하고 Django 개발 서버에 액세스하려면 settings.py 파일을 편집하고 ALLOWED_HOSTS 내에 서버 IP 주소를 추가해야 합니다.
웹 브라우저에서 http://127.0.0.1:8000을 열면 기본 Django 랜딩 페이지가 표시됩니다.
URL 끝에 /admin/을 추가하여 Django admin 인터페이스에 액세스할 수 있습니다(http://127.0.1:8000/admin/). 관리자 로그인 화면으로 이동합니다.
사용자 이름과 암호를 입력하면 Django 관리 페이지로 리디렉션됩니다.
개발 서버를 중지하려면 터미널에 Ctrl-C를 입력합니다.
가상 환경 비활성화
작업이 끝나면 비활성화를 입력하여 환경을 비활성화하면 정상적인 쉘로 돌아갑니다.
deactivate
'SW > 리눅스' 카테고리의 다른 글
Debian 9 : SSH Keys 설정하는 방법, 예제, 명령어 (0) | 2021.02.17 |
---|---|
Ubuntu 18.04 : Apache Maven 설치하는 방법, 예제, 명령어 (0) | 2021.02.16 |
Debian 9 : Let's Encrypt로 Apache 보안 설정하는 방법, 예제, 명령어 (0) | 2021.02.14 |
Linux : Docker Container, Images, Volumes, Networks 제거하는 방법, 예제, 명령어 (0) | 2021.02.13 |
Debian 9 : UFW로 방화벽으로 설정하는 방법, 예제, 명령어 (0) | 2021.02.12 |