Электродневник+Django: различия между версиями
Vovan (обсуждение | вклад) |
Vovan (обсуждение | вклад) (→Установка дневника посредством скриптов) |
||
(не показаны 24 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
− | + | Актуально для Ubuntu 12.04 | |
− | |||
− | Оффсайт проекта | + | =Оффсайт проекта= |
− | + | http://school-record-book.ru/ | |
Скачать проект можно так: | Скачать проект можно так: | ||
wget https://github.com/Entropius/recordbook/archive/master.zip | wget https://github.com/Entropius/recordbook/archive/master.zip | ||
− | или так | + | или так: |
git clone https://github.com/Entropius/recordbook.git | git clone https://github.com/Entropius/recordbook.git | ||
− | + | =Установка = | |
− | / | + | |
+ | ==Пакеты из репозитория== | ||
+ | sudo apt-get install apache2 libapache2-mod-wsgi mysql-server python-virtualenv python-mysqldb python-django python-pytils python-django-south python-demjson git | ||
+ | |||
+ | ==Загрузка проекта из репозитория git== | ||
+ | |||
+ | sudo apt-get install git | ||
+ | cd /var/www/ | ||
+ | ls | ||
+ | sudo rm index.html | ||
+ | sudo chmod 777 . | ||
+ | git clone git://github.com/Entropius/recordbook.git . | ||
+ | |||
+ | ==Создание MySQL пользователя=пароля=базы_данных=odaybook (из консоли linux)== | ||
+ | mysql -u root -p | ||
+ | далее из консоли MySQL (mysql>): | ||
+ | CREATE USER 'odaybook'@'localhost' identified by 'odaybook'; | ||
+ | CREATE DATABASE odaybook CHARACTER SET utf8 COLLATE utf8_unicode_ci; | ||
+ | GRANT ALL ON odaybook.* to 'odaybook'@'localhost'; | ||
+ | exit | ||
+ | |||
+ | ==Немного подшаманим дефолтный конфиг== | ||
+ | Это нужно, чтобы создание БД при установке системы происходило не под пользователем root с паролем 123, а под созданным нами пользователем odaybook с созданным нами паролем odaybook. | ||
+ | |||
+ | Не у всех же один сервер под одну систему ;-) Так будет правильнее, ИМХО. | ||
+ | |||
+ | Откроем файл: | ||
+ | nano /var/www/odaybook/settings_dist.py | ||
+ | |||
+ | И приведем конфигурацию подключения к БД и название БД в соответствии с нашими требованиями, заодно настроем админа системы е его электропочту. | ||
+ | |||
+ | Пример настроенного файла на администратора с электропочтой admin@nntc.nnov.ru и базу данных, расположенную в MySQL на localhost с логином=паролем=именем_базы_данных=odaybook: | ||
+ | <pre> | ||
+ | ... | ||
+ | ADMINS = ( | ||
+ | ('admin', 'admin@nntc.nnov.ru'), | ||
+ | ) | ||
+ | |||
+ | MANAGERS = ADMINS | ||
+ | |||
+ | PROJECT_DIR = os.path.dirname(os.path.abspath(__file__)) | ||
+ | |||
+ | DATABASES = { | ||
+ | 'default': { | ||
+ | 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. | ||
+ | 'NAME': 'odaybook', # Or path to database file if using sqlite3. | ||
+ | 'USER': 'odaybook', # Not used with sqlite3. | ||
+ | 'PASSWORD': 'odaybook', # Not used with sqlite3. | ||
+ | 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. | ||
+ | 'PORT': '', # Set to empty string for default. Not used with sqlite3. | ||
+ | } | ||
+ | } | ||
+ | ... | ||
+ | </pre> | ||
+ | |||
+ | ==Настройка виртуального хоста apache== | ||
+ | sudo nano /etc/apache2/sites-enabled/000-default | ||
+ | |||
+ | заменить содержимое файла на | ||
+ | <pre> | ||
+ | <VirtualHost *:80> | ||
+ | ServerAdmin webmaster@localhost | ||
+ | |||
+ | DocumentRoot /var/www | ||
+ | |||
+ | Alias /media /var/www/media | ||
+ | |||
+ | WSGIScriptAlias / /var/www/webapp.wsgi | ||
+ | WSGIDaemonProcess odaybook user=administrator group=administrator threads=1 processes=1 display-name=%{GROUP} maximum-requests=1 | ||
+ | WSGIProcessGroup odaybook | ||
+ | |||
+ | ErrorLog /var/log/apache2/odaybook_error.log | ||
+ | |||
+ | # Possible values include: debug, info, notice, warn, error, crit, | ||
+ | # alert, emerg. | ||
+ | LogLevel info | ||
+ | |||
+ | CustomLog /var/log/apache2/odaybook_access.log combined | ||
+ | |||
+ | </VirtualHost> | ||
+ | </pre> | ||
+ | |||
+ | sudo /etc/init.d/apache2 restart | ||
+ | |||
+ | =Установка дневника посредством скриптов= | ||
+ | |||
+ | cd /var/www | ||
+ | ./build/buildenv.sh | ||
+ | ./odaybook/manage.py syncdb | ||
+ | на вопрос типа | ||
+ | You just installed Django's auth system, which means you don't have any superusers defined. | ||
+ | Would you like to create one now? (yes/no): | ||
+ | ответить: | ||
+ | no | ||
+ | |||
+ | далее команда: | ||
+ | python ./odaybook/manage.py shell | ||
+ | |||
+ | откроется консоль python: | ||
+ | <pre> | ||
+ | Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) | ||
+ | [GCC 4.5.2] on linux2 | ||
+ | Type "help", "copyright", "credits" or "license" for more information. | ||
+ | (InteractiveConsole) | ||
+ | >>> | ||
+ | </pre> | ||
+ | |||
+ | в ней пишем: | ||
+ | |||
+ | from odaybook.userextended.models import Superuser | ||
+ | Superuser(last_name = 'Pupkin', first_name='Vasya', username='admin', email='pupkin@gmail.com').save() | ||
+ | exit() | ||
+ | |||
+ | где | ||
+ | |||
+ | Pupkin - Фамилия | ||
+ | |||
+ | Vasya - Имя | ||
+ | |||
+ | admin - Имя пользователя | ||
+ | |||
+ | pupkin@gmail.com - емэйл, на который придет пароль от учетной записи admin (aka Pupkin Vasya) |
Текущая версия на 21:40, 10 ноября 2013
Актуально для Ubuntu 12.04
Содержание
Оффсайт проекта
http://school-record-book.ru/
Скачать проект можно так:
wget https://github.com/Entropius/recordbook/archive/master.zip
или так:
git clone https://github.com/Entropius/recordbook.git
Установка
Пакеты из репозитория
sudo apt-get install apache2 libapache2-mod-wsgi mysql-server python-virtualenv python-mysqldb python-django python-pytils python-django-south python-demjson git
Загрузка проекта из репозитория git
sudo apt-get install git cd /var/www/ ls sudo rm index.html sudo chmod 777 . git clone git://github.com/Entropius/recordbook.git .
Создание MySQL пользователя=пароля=базы_данных=odaybook (из консоли linux)
mysql -u root -p
далее из консоли MySQL (mysql>):
CREATE USER 'odaybook'@'localhost' identified by 'odaybook'; CREATE DATABASE odaybook CHARACTER SET utf8 COLLATE utf8_unicode_ci; GRANT ALL ON odaybook.* to 'odaybook'@'localhost'; exit
Немного подшаманим дефолтный конфиг
Это нужно, чтобы создание БД при установке системы происходило не под пользователем root с паролем 123, а под созданным нами пользователем odaybook с созданным нами паролем odaybook.
Не у всех же один сервер под одну систему ;-) Так будет правильнее, ИМХО.
Откроем файл:
nano /var/www/odaybook/settings_dist.py
И приведем конфигурацию подключения к БД и название БД в соответствии с нашими требованиями, заодно настроем админа системы е его электропочту.
Пример настроенного файла на администратора с электропочтой admin@nntc.nnov.ru и базу данных, расположенную в MySQL на localhost с логином=паролем=именем_базы_данных=odaybook:
... ADMINS = ( ('admin', 'admin@nntc.nnov.ru'), ) MANAGERS = ADMINS PROJECT_DIR = os.path.dirname(os.path.abspath(__file__)) DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'odaybook', # Or path to database file if using sqlite3. 'USER': 'odaybook', # Not used with sqlite3. 'PASSWORD': 'odaybook', # Not used with sqlite3. 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. } } ...
Настройка виртуального хоста apache
sudo nano /etc/apache2/sites-enabled/000-default
заменить содержимое файла на
<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www Alias /media /var/www/media WSGIScriptAlias / /var/www/webapp.wsgi WSGIDaemonProcess odaybook user=administrator group=administrator threads=1 processes=1 display-name=%{GROUP} maximum-requests=1 WSGIProcessGroup odaybook ErrorLog /var/log/apache2/odaybook_error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel info CustomLog /var/log/apache2/odaybook_access.log combined </VirtualHost>
sudo /etc/init.d/apache2 restart
Установка дневника посредством скриптов
cd /var/www ./build/buildenv.sh ./odaybook/manage.py syncdb
на вопрос типа
You just installed Django's auth system, which means you don't have any superusers defined. Would you like to create one now? (yes/no):
ответить:
no
далее команда:
python ./odaybook/manage.py shell
откроется консоль python:
Python 2.7.1+ (r271:86832, Apr 11 2011, 18:05:24) [GCC 4.5.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. (InteractiveConsole) >>>
в ней пишем:
from odaybook.userextended.models import Superuser Superuser(last_name = 'Pupkin', first_name='Vasya', username='admin', email='pupkin@gmail.com').save() exit()
где
Pupkin - Фамилия
Vasya - Имя
admin - Имя пользователя
pupkin@gmail.com - емэйл, на который придет пароль от учетной записи admin (aka Pupkin Vasya)