Тот, кто щеголяет эрудицией или ученостью, не имеет ни того, ни другого (Э. Хемингуэй).

Установить Wagtail на CentOS 7

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
7 января 2017
Установить Wagtail на CentOS 7
В этой статье мы расскажем вам, как установить Wagtail на Centos VPS с Nginx и uWSGI. Wagtail это гибкая система управления контентом Django с открытым исходным кодом сосредоточено на гибкости и пользовательском опыте. Это руководство должно работать на других системах Linux VPS, так же хорошо, но была испытана и написана для Centos 7 VPS.

Войдите на свой VPS через SSH

ssh root@vps

Установите репозиторий EPEL

Чтобы установить хранилище Epel на вашем CentOS VPS, просто запустите:

[root]$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm

Обновите систему и установите необходимые пакеты

[root]$ yum -y update
[root]$ yum -y install python-pip python-virtualenv pcre-devel python-imaging python-devel libjpeg-turbo-devel make gcc

Создайте нового пользователя системы

Создание нового пользователя для Wagtail:

[root]$ adduser --comment 'Wagtail User' --home-dir /home/wagtail wagtail
[root]$ chmod 755 /home/wagtail

Установите Wagtail

[root]$ pip install wagtail

Создание виртуального проекта Wagtail среды python

Следующие команды выполняются пользователем Wagtail. Для того, чтобы переключиться на пользователя wagtail:

[root]$ su - wagtail

Создайте новый проект Wagtail

[wagtail]$ wagtail start mysite

Создайте новый virtualenv с помощью следующей команды

[wagtail]$ virtualenv wagtail-env

Переход к новому virtualenv

[wagtail]$ source ~/wagtail-env/bin/activate

Установите все зависимости с pip:

(wagtail-env)[wagtail]$ cd mysite
(wagtail-env)[wagtail]$ pip install -r requirements.txt

Создайте новую базу данных SQLite

(wagtail-env)[wagtail]$ python manage.py migrate

Создайте пользователя с правами администратора

(wagtail-env)[wagtail]$ python manage.py createsuperuser

Установка и настройка Nginx и uWSGI

Nginx не доступен по умолчанию в CentOS 7 поэтому мы будем использовать официальный репозиторий Nginx:

[root]$ rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

Чтобы установить Nginx запустите:

[root]$ yum -y install nginx

Затем создайте новый блок сервера Nginx:

[root]$ nano /etc/nginx/conf.d/YOUR_WAGTAIL_DOMAIN.conf
server {
    server_name YOUR_WAGTAIL_DOMAIN;
    
    client_body_in_file_only clean;
    client_body_buffer_size 64K;
    client_max_body_size 40M;
    sendfile on;
    send_timeout 300s;

    error_log /var/log/nginx/mywagtailsite_error.log;
    access_log /var/log/nginx/mywagtailsite_access.log;

    location / {
        uwsgi_pass      unix:/home/wagtail/mysite/mysite/wagtail.socket;
        include         /etc/nginx/uwsgi_params;
        uwsgi_param     UWSGI_SCHEME $scheme;
        uwsgi_param     SERVER_SOFTWARE    nginx/$nginx_version;
    }
}

Установить uWSGI используя pip

pip install --upgrade uwsgi

Создание конфигурационного файла uwsgi для Wagtail:

[root]$ mkdir /etc/uwsgi.d/
[root]$ nano /etc/uwsgi.d/wagtail.ini
[uwsgi]
chmod-socket = 666
virtualenv = /home/wagtail/wagtail-env
mount  = /=wsgi:application
chdir  = /home/wagtail/mysite/
wsgi-file = mysite/wsgi.py
socket = /home/wagtail/mysite/mysite/%n.socket
stats  = /home/wagtail/mysite/mysite/%n.stats.socket
logto  = /home/wagtail/mysite/mysite/%n.log
workers = 4
uid = wagtail
gid = wagtail
limit-as = 512

Откройте редактор по вашему выбору и создайте новый Systemd сервис для Wagtail:

[root]$ nano /etc/systemd/system/uwsgi.service

и добавьте следующие строки кода:

[Unit]
Description=uWSGI Emperor Service
After=syslog.target

[Service]
ExecStart=/usr/bin/uwsgi --master --die-on-term --emperor /etc/uwsgi.d
ExecReload=/bin/kill -HUP $MAINPID
KillSignal=SIGINT
Restart=always
Type=notify
StandardError=syslog
NotifyAccess=all

[Install]
WantedBy=multi-user.target

Запустите и включите uWSGI при загрузке:

[root]$ systemctl enable uwsgi
[root]$ systemctl start uwsgi

Запустите и включите Nginx при загрузке:

[root]$ systemctl enable nginx
[root]$ systemctl start nginx

Вот и все. Вы успешно установили Wagtail. Для того, чтобы получить доступ к нему, откройте http://YOUR_WAGTAIL_DOMAIN/ в вашем браузере. Для получения дополнительной информации о Wagtail, пожалуйста, обратитесь к официальному сайту Wagtail.

Установить Wagtail на CentOS 7

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 133

Если статья понравилась, то поделитесь ей в социальных сетях:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close