티스토리 뷰
How to use Django on Ubuntu
예전에는 간단하게 설치법을 다루었었는데 요즘 Python과 더불어
함께 급부상 하고있는 Python Web Framework인 Django, Flask등의 인기가
끊임 없이 상승중이어서 자세히 다뤄보고자 한다.
(Django를 사용하는 대표적 서비스에 대한 소개. http://codecondo.com/popular-websites-django/)
설치 방법
step 1. Instal Python & Tools
python 부터 설치하도록 한다.
$ sudo apt-get install python
python 설치 후 installer를 설치한다.
(Nodejs의 npm, php의 pear, ruby의 gem과 같은 Package Installer)
$ sudo apt-get install python-setuptools
python 독립된 가상환경을 제공하는 virtualenv까지 설치하면 기본적인 설정은 끝이다.
$ easy_install virtualenvwrapper
bashrc에 환경변수 설정을 미리 해두도록 한다.
~/.bashrc
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/rocksea
source /usr/local/bin/virtualenvwrapper.sh
$ source ~/.bashrc
Step 2. 가상환경 생성.
독립적으로 가상환경을 구성하여 각 프로젝트 환경에 맞는 가상환경을
운영하도록 한다.
$ mkvirtualenv YOUR_VIRTUALENV_NAME
가상환경을 만든 후 실행한다. 이제 독립된 환경에서 프로젝트 관련된
라이브러리 등을 설치하여 관리가 가능하다.
$ workon YOUR_VIRTUALENV_NAME
Step 3. Django 설치
$ pip install django==1.8
MySQL을 MainDB로 사용할 것이기 때문에 MySQL 관련 Library들을 설치하도록 한다.
$ sudo apt-get update
$ sudo apt-get install libmysqlclient-dev
$ sudo apt-get install python-dev
$ pip install mysql-python==1.2.5
Django가 잘 설치되었는지 확인해 보도록 한다.
$ python
Python 2.7.6 (default, Mar 22 2014, 22:59:56)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import django
>>> print(django.get_version())
1.8.2
>>>
Step 4. Django Project 생성
$ django-admin startproject rocksea
프로젝트 생성 후 Main DB를 MySQL 정보로 수정한다. (Default SQL Lite)
$ vi rocksea/settings.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'DB_NAME',
'HOST': '127.0.0.1',
'PORT': '3306',
'USER': 'root',
'PASSWORD': '',
}}
DB정보 수정 후 Migration 명령을 통해 DB를 생성하도록 한다.
$ python manage.py migrate
Operations to perform:
Synchronize unmigrated apps: staticfiles, messages
Apply all migrations: admin, contenttypes, auth, sessions
Synchronizing apps without migrations:
Creating tables...
Running deferred SQL...
Installing custom SQL...
Running migrations:
Rendering model states... DONE
Applying contenttypes.0001_initial... OK
Applying auth.0001_initial... OK
Applying admin.0001_initial... 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 sessions.0001_initial... OK
DB Schema 확인
> show tables;
+----------------------------+
| Tables_in_rocksea |
+----------------------------+
| auth_group |
| auth_group_permissions|
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| django_admin_log |
| django_content_type |
| django_migrations |
+----------------------------+
DB Migration 종료 후 프로젝트 관리자 계정 정보를 등록하도록 한다.
$ python manage.py createsuperuser
Username (leave blank to use 'root'):
Email address: globalrocksea@gmail.com
Password:
Password (again):
Superuser created successfully.
서버를 구동해보도록 한다.
$ python manage.py runserver 0.0.0.0:8000
Browser로 접속 후 확인해보면 아래와 같은 사이트에 접속이 가능하다.
http://localhost:8000/admin
[그림1] Django Admin Web 페이지
이어서 바로 Django 패키지 구조 및 코딩 방법에 대해 소개하도록 하겠다.
'Developer' 카테고리의 다른 글
[Django#3] Getting started with simple application (2) | 2015.07.10 |
---|---|
[Django#2] Getting started with simple application (0) | 2015.07.02 |
[Android#1] GCM Push메세지 전송 (2) | 2015.06.01 |
[python] Method of pyc decompiler (0) | 2015.04.27 |
[Node.js] pm2 has a problem with openning a lot of file descriptors. (0) | 2015.04.02 |
- Total
- Today
- Yesterday
- Python
- JBOSS
- memcached
- hadoop
- redis
- hdfs
- 조동사
- maven
- it
- 여행
- 영문법
- ubuntu
- nodejs
- NGINX
- 비지니스 영어
- 비교구문
- Python Django
- PostgreSQL
- 베트남
- 영작
- k8s
- 스페인 여행
- 대명사 구문
- AWS
- 해외여행
- 다낭
- mongoDB
- 도덕경
- 가정법
- Business English
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |