[PYTHON] So stellen Sie eine Django-App in nur 5 Minuten für Heroku bereit

Ich habe den Artikel unter Bezugnahme auf das unten stehende offizielle Dokument geschrieben. https://devcenter.heroku.com/articles/getting-started-with-django#declare-process-types-with-procfile

Arbeitsumgebung

Voraussetzungen

  1. Haben Sie ein Heroku-Konto
  2. heroku toolbelt muss installiert sein
  3. virtualenv ist installiert

Einführung in PostgreSQL

Installation

$ brew install postgresql

Übergeben Sie den Pfad (~ / .bash_profile)

export PATH=/usr/local/Cellar/postgresql/9.4.1/bin:"$PATH"

Terminal neu starten

Erstellen Sie eine Django-Umgebung

** Anwendungsverwaltungsverzeichnis erstellen und verschieben **

$ mkdir hellodjango && cd hellodjango

** Erstellen Sie eine virtuelle Umgebung mit venv und starten Sie sie **

$ virtualenv venv
$ source venv/bin/activate

** Laden Sie eine Reihe von Django-Bibliotheken herunter **

$ pip install django-toolbelt

** Django-Projekterstellung **

$ django-admin.py startproject hellodjango .

** Erstellen Sie ein Procfile und beschreiben Sie die folgenden Inhalte **

web: gunicorn hellodjango.wsgi --log-file -

** Lokalen Server starten **

$ foreman start
21:21:26 web.1  | started with pid 5513
21:21:26 web.1  | [2015-05-10 21:21:26 +0900] [5513] [INFO] Starting gunicorn 19.3.0
21:21:26 web.1  | [2015-05-10 21:21:26 +0900] [5513] [INFO] Listening at: http://0.0.0.0:5000 (5513)
21:21:26 web.1  | [2015-05-10 21:21:26 +0900] [5513] [INFO] Using worker: sync
21:21:26 web.1  | [2015-05-10 21:21:26 +0900] [5516] [INFO] Booting worker with pid: 5516

OK, wenn Sie unter http://0.0.0.0:5000 zugreifen können

Erstellen Sie die Datei require.txt, die Pip-Abhängigkeiten darstellt

$ pip freeze > requirements.txt

Django-Einstellungen

** Fügen Sie den folgenden Inhalt am Ende von settings.py hinzu **

# Parse database configuration from $DATABASE_URL
import dj_database_url
DATABASES['default'] =  dj_database_url.config()

# Honor the 'X-Forwarded-Proto' header for request.is_secure()
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

# Allow all host headers
ALLOWED_HOSTS = ['*']

# Static asset configuration
import os
BASE_DIR = os.path.dirname(os.path.abspath(__file__))
STATIC_ROOT = 'staticfiles'
STATIC_URL = '/static/'

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, 'static'),
)

** Schreiben Sie wsgi.py mit den folgenden Inhalten neu **

import os
from django.core.wsgi import get_wsgi_application
from dj_static import Cling

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "hellodjango.settings")

application = Cling(get_wsgi_application())

Git-Versionsverwaltung

** Erstellen Sie eine Gitignore-Datei und fügen Sie den folgenden Inhalt hinzu **

venv
*.pyc
staticfiles

** Zum Repository hinzufügen **

$ git init
$ git add .
$ git commit -m "my django app"

In Heroku bereitstellen

** Erstelle ein Repository in Heroku **

$ heroku create

** Anwendung auf Heroku bereitstellen **

$ git push heroku master

** Stellen Sie die Anzahl der Prüfstände ein **

$ heroku ps:scale web=1

** Vom Browser prüfen **

$ heroku open

Wenn der folgende Bildschirm angezeigt wird, ist es OK!

Welcome_to_Django.png

Recommended Posts

So stellen Sie eine Django-App in nur 5 Minuten für Heroku bereit
So stellen Sie eine Django-Anwendung in der Alibaba-Cloud bereit
So stellen Sie eine mit Flask erstellte Web-App für Heroku bereit
Stellen Sie die Django-App in Heroku bereit [Teil 2]
Stellen Sie die Django-App in Heroku bereit [Teil 1]
So entwickeln Sie eine Cart-App mit Django
So erstellen Sie eine Rest-API in Django
Ich möchte eine Django-App auf Heroku hochladen
Stellen Sie Python 3.6 / Django / Postgres-Webanwendungen in Azure bereit
Ein Memorandum zur Verwendung von Keras 'keras.preprocessing.image
Stellen Sie die Django-Anwendung in Google App Engine (Python3) bereit.
Stellen Sie die Masonite-App auf Heroku 2020 bereit
So erstellen Sie eine Django (Python) -Umgebung auf Docker
Verwendung von Django mit Google App Engine / Python
Stellen Sie die mit PTVS erstellte Django-App in Azure bereit
Stellen Sie das Django-Projekt für Heroku bereit
So führen Sie Django unter IIS auf einem Windows-Server aus
So verweisen Sie auf statische Dateien in einem Django-Projekt
Stellen Sie eine mit Streamlit erstellte Web-App für Heroku bereit
Verliere nicht gegen Ruby! Wie man Python (Django) auf Heroku ausführt
So stellen Sie Pybot, das einfachste Python-Lehrbuch, auf Heroku bereit
(Fehler) Stellen Sie eine mit Flask mit Heroku erstellte Web-App bereit
Hinweise zum Laden einer virtuellen Umgebung mit PyCharm
So generieren Sie eine Abfrage mit dem IN-Operator in Django
Stellen Sie die Django-Anwendung auf Heroku bereit
So stellen Sie den Django-Kompressor unter Windows bereit
Implementieren Sie die Django-App auf Hy
Wie man CSS in Django reflektiert
Stellen Sie die Flask-App für Heroku bereit (bitter)
Stellen Sie die Flask-App auf Heroku bereit
Stellen Sie die Flask-App auf Heroku bereit
Stellen Sie Django in 3 Minuten mit Docker-Compose bereit
So stellen Sie eine Webanwendung in der Alibaba Cloud als Freiberufler bereit
So löschen Sie abgelaufene Sitzungen in Django
Wie bekomme ich Stacktrace in Python?
So testen Sie auf einer von Django authentifizierten Seite
So führen Sie vom Server gesendete Ereignisse in Django durch
Bis Sie ein SpringBoot-Projekt in Gradle mit App Engine Flexible bereitstellen
Erstellen Sie eine Django-App auf Docker und stellen Sie sie in AWS Fargate bereit
So finden Sie den Ansichtsnamen mit dem Namespace über die URL (path_info) in Django
Django Heroku Deploy 1
Django Heroku Deploy 2
So löschen Sie einen Taple in einer Liste (Python)
So implementieren Sie Rails-Helfer-ähnliche Funktionen in Django
Einbetten von Variablen in Python-Strings
Veröffentlichtes Django-Projekt, entwickelt in Cloud9 auf Heroku
So reflektieren Sie ImageField in Django + Docker (Kissen)
Aktivieren Sie Django https in nur wenigen Zeilen
So stellen Sie eine Streamlit-Anwendung für GCP (GAE) bereit
Erstellen Sie mit Vagrant in 5 Minuten eine Django-Umgebung
So implementieren Sie eine Verlaufsauswahl in Houdini
So benachrichtigen Sie Discord-Kanäle in Python
Wie man mit 2017 Windows ein anständiges Leben führt
Verfahren zur Erstellung plattformübergreifender Apps mit kivy
[Python] Wie zeichnet man mit Matplotlib ein Histogramm?
Bis Sie eine neue App in Django erstellen
Wie schreibe ich ein benanntes Tupeldokument im Jahr 2020?
So zählen Sie Zahlen in einem bestimmten Bereich
So lesen Sie Dateien in verschiedenen Verzeichnissen