GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

Installieren Sie Django CMS auf Ubuntu 12.04 mit MariaDB, Gunicorn und Nginx

In diesem Blogbeitrag zeigen wir Ihnen, wie Sie das Django-CMS auf einem Ubuntu-VPS mit MariaDB, Nginx und Gunicorn  installieren.

Django CMS ist ein Open-Source-Content-Management-System, das auf dem Web-Framework Django basiert. Einige der Hauptfunktionen sind:Plugin-basiert, hübsche URLs, Berechtigungsverwaltung, Apps, Frontend-Bearbeitung, Analytics, Blog usw.

Der folgende Befehl installiert alle erforderlichen Pakete

apt-get updateapt-get install -y python-software-properties python python-dev

Installieren Sie die neueste Version von Nginx

add-apt-repository ppa:nginx/stableapt-get update &&sudo apt-get install nginx

Installieren Sie MariaDB und erstellen Sie eine Datenbank.

apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943dbadd-apt-repository 'deb http://ftp.osuosl.org/pub/mariadb/repo/5.5 /ubuntu präzise main'apt-get updateecho -e "Paket:*\nPin:Ursprung ftp.osuosl.org\nPin-Priorität:1000" | tee /etc/apt/preferences.d/mariadbapt-get install mariadb-server libmariadbclient-dev
mysql -uroot -pMariaDB [(keine)]> DATENBANK ERSTELLEN dcms;MariaDB [(keine)]> GEWÄHREN SIE ALLE PRIVILEGIEN AUF dcms.* AN 'dcmsuser'@'localhost' IDENTIFIED BY 'pa33W0rd';MariaDB [(keine )]> FLUSH PRIVILEGES;MariaDB [(keine)]> \q

Pip installieren

curl https://raw.github.com/pypa/pip/master/contrib/get-pip.py | python -

Erstellen Sie eine virtuelle Umgebung mit Pip

sudo pip install --upgrade virtualenvmkdir -p ~/.virtualenvs/djangocmsvirtualenv ~/.virtualenvs/djangocmssource ~/.virtualenvs/djangocms/bin/activate

Erstellen Sie eine requirements.txt-Datei mit folgendem Inhalt

# Bare minimumdjango-cms==2.4.1#Diese Abhängigkeiten werden von django-cms eingebracht, aber wenn Sie ihre Version sperren möchten, geben Sie sie anDjango==1.5.1django-classy-tags==0.4South ==0.8.1html5lib==1.0b1django-mptt==0.5.2django-sekizai==0.7six==1.3.0mysql-python==1.2.5#Optionale, empfohlene PaketePillow==2.0.0django-filer==0.9. 4cmsplugin-filer==0.9.5django-reversion==1.7

Django-CMS installieren

pip install --upgrade --download-cache=~/.pip-cache -r requirements.txt

Erstellen Sie Ihr Django-CMS-Projekt

mkdir ~/projectscd ~/projectsdjango-admin.py startproject mynewproject

Öffnen Sie die Datei ~/projects/mynewproject/mynewproject/settings.py und fügen Sie am Anfang der Datei Folgendes hinzu:

# -*- Codierung:utf-8 -*-import osgettext =lambda s:sPROJECT_PATH =os.path.split(os.path.abspath(os.path.dirname(__file__)))[0] 

Fügen Sie Ihre Datenbankdetails hinzu:

DATABASES ={ 'default':{ 'ENGINE':'django.db.backends.mysql', 'NAME':'dcms', 'USER':'dcms', 'PASSWORD':'pa33W0rd', ' HOST':'', 'PORT':'', }}

Fügen Sie die folgenden Apps zu INSTALLED_APPS hinzu.

'django.contrib.admin',INSTALLED_APPS =('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib .messages', 'django.contrib.staticfiles', 'django.contrib.admin', 'django.contrib.admindocs', 'cms', 'mptt', 'menus', 'south', 'sekizai') 

Fügen Sie die folgenden Zeilen zur MIDDLEWARE_CLASSES-Liste hinzu.

MIDDLEWARE_CLASSES =( 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', # Entkommentieren Sie die nächste Zeile für einfachen Clickjacking-Schutz:# 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'cms.middleware.page.CurrentPageMiddleware', 'cms.middleware.user. CurrentUserMiddleware', 'cms.middleware.toolbar.ToolbarMiddleware', 'cms.middleware.language.LanguageCookieMiddleware',)

Fügen Sie am Ende der Datei Folgendes hinzu:

TEMPLATE_CONTEXT_PROCESSORS =( 'django.contrib.auth.context_processors.auth', 'django.core.context_processors.i18n', 'django.core.context_processors.request', 'django.core.context_processors.media', 'django .core.context_processors.static', 'cms.context_processors.media', 'sekizai.context_processors.sekizai',)

Ändern Sie die Direktiven STATIC_ROOT und MEDIA_ROOT in:

STATIC_ROOT =os.path.join(PROJECT_PATH, "static")STATIC_URL ="/static/"MEDIA_ROOT =os.path.join(PROJECT_PATH, "media")MEDIA_URL ="/media/"

Ändern Sie die Direktive TEMPLATE_DIRS:

TEMPLATE_DIRS =( # Die Dokumentation sagt, es sollte ein absoluter Pfad sein:PROJECT_PATH ist genau eins. # Das Leben ist wunderbar! os.path.join(PROJECT_PATH, "templates"),)

Fügen Sie CMS_TEMPLATES mindestens eine Vorlage hinzu

CMS_TEMPLATES =( ('template_1.html', 'Template One'), ('template_2.html', 'Template Two'),)

Auf Englisch beschränken

LANGUAGES =[ ('en', 'English'),]

Speichern Sie abschließend die Datei settings.py.

Routen für unser Projekt definieren

Öffnen Sie die Datei mynewproject/mynewproject/urls.py und ersetzen Sie den Inhalt durch den folgenden

aus django.conf.urls.defaults import *aus django.conf.urls.i18n import i18n_patternsaus django.contrib import adminaus django.conf import settingsadmin.autodiscover()urlpatterns =pattern('',  url(r'^admin /', include(admin.site.urls)),  url(r'^', include('cms.urls')),)if settings.DEBUG:urlpatterns =pattern('', url(r'^media/ (?P.*)$', 'django.views.static.serve', {'document_root':settings.MEDIA_ROOT, 'show_indexes':True}), url(r'', include('django. contrib.staticfiles.urls')),) + URL-Muster

Vorlagen erstellen

Erstellen Sie ein neues Verzeichnis templates

mkdir ~/projects/mynewproject/templates

Öffnen Sie Ihren bevorzugten Editor und erstellen Sie die folgenden Dateien:

base.html

{% cms_tags laden sekizai_tags %}  {% render_block "css" %}   {% cms_toolbar %} {% placeholder base_content %} {% block base_content %}{% endblock %} {% render_block "js" %} 

template_1.html

{% erweitert "base.html" %}{% cms_tags laden %}{% base_content blockieren %} {% placeholder template_1_content %}{% endblock %}

template_2.html

{% erweitert "base.html" %}{% cms_tags laden %}{% base_content blockieren %} {% placeholder template_2_content %}{% endblock %}

Initialisieren Sie die Datenbank und erstellen Sie einen neuen Superuser

python manage.py syncdb --allpython manage.pymigrate --fake

Überprüfen Sie, ob alles richtig eingerichtet ist

python manage.py CMS-Prüfung

Wenn Sie „Installation okay“ sehen, bedeutet dies, dass alles richtig eingerichtet ist.

Statische Dateien sammeln

cd ~/projects/mynewproject./manage.py collectstatic

Gunicorn installieren und konfigurieren

pip install gunicorn

Erstellen Sie eine neue Konfigurationsdatei (~/.virtualenvs/djangocms/gunicorn_config.py) wie folgt

command ='~/.virtualenvs/djangocms/bin/gunicorn'pythonpath ='~/projects/mynewproject'bind ='127.0.0.1:8011'workers =3user =niemand

Starten Sie das Gunicorn mit dem folgenden Befehl:

cd ~/projects/mynewproject &&gunicorn -c ~/.virtualenvs/djangocms/gunicorn_config.py mynewproject.wsgi

Nginx konfigurieren

Erstellen Sie einen neuen virtuellen Nginx-Host

vim /etc/nginx/sites-available/ihre_domain.com
Server { listen       80; server_name  your_domain.com; Standort /statisch/ {        Alias ​​//projects/mynewproject/static/; }    Standort / {        Proxy_pass_header-Server; Proxy_set_header Host $http_host; Proxy-Weiterleitung aus; Proxy_Set_Header X-Real-IP $remote_addr; proxy_set_header X-Schema $schema; Proxy_connect_timeout 10; Proxy_read_timeout 10; Proxy_Pass http://localhost:8011/; } }ln -s /etc/nginx/sites-available/your_domain.com /etc/nginx/sites-enabled/your_domain.com/etc/init.d/nginx restart

Das ist es. Öffnen Sie nun Ihren Browser und navigieren Sie zu Ihrer Domain.

Weitere Informationen zum Django-CMS finden Sie unter:http://docs.django-cms.org/

Natürlich müssen Sie nichts davon tun, wenn Sie einen unserer Linux-VPS-Hosting-Dienste nutzen. In diesem Fall können Sie einfach unsere erfahrenen Linux-Administratoren bitten, dies für Sie zu installieren. Sie sind rund um die Uhr erreichbar und kümmern sich umgehend um Ihr Anliegen.

PS . Wenn Ihnen dieser Beitrag gefallen hat, teilen Sie ihn bitte mit Ihren Freunden in den sozialen Netzwerken über die Schaltflächen auf der linken Seite oder hinterlassen Sie einfach unten eine Antwort. Danke.


Panels
  1. Installieren Sie das Oktober-CMS auf Ubuntu mit Nginx und MariaDB

  2. NodeBB mit Redis und Nginx unter Ubuntu 12.04 installieren und einrichten

  3. Installieren Sie WordPress mit Varnish und Nginx auf Ubuntu

  4. Installieren Sie WordPress mit Memcached und Nginx auf Ubuntu

  5. So richten Sie Django mit Postgres, Nginx und Gunicorn unter Ubuntu 20.04 ein

So installieren Sie Grav CMS mit Nginx unter Ubuntu 16.04

So installieren Sie Wordpress mit Nginx, MariaDB und HHVM auf Ubuntu 16.04 LTS

So installieren Sie Django mit PostgreSQL und Nginx unter Ubuntu 16.04

So installieren Sie Wordpress mit Nginx, MariaDB und HHVM in Ubuntu 15.04

Richten Sie Django mit Postgres, Nginx und Gunicorn auf Ubuntu 18.04 ein

Installieren Sie Prosper202 mit Nginx, MySQL und PHP-FPM auf Ubuntu