Letztes Mal beschreibt hauptsächlich docker-compose.yml. Dieses Mal werde ich die Einstellungen der Django-Anwendung beschreiben.
Es ist unten für die Öffentlichkeit zugänglich. Bitte beziehen Sie sich zusammen mit dem Artikel darauf. Dockerize Django Environment
docker-compose run web django-admin.py startproject Beliebiger Projektname.
web
-Verzeichnisses (Verzeichnis für Django
) auf der Hostseite wie folgt.┣web
┃ ┗ Beliebiges Projektnamenverzeichnis
┃ ┗Dockerfile
┃ ┗requirements.txt
┃ ┗manage.py
PostgreSQL
herBeliebiges Projektnamenverzeichnis/settings.py
# Database
# https://docs.djangoproject.com/en/1.10/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql',
'NAME': 'postgres',
'USER': 'postgres',
'HOST': 'postgres',
'PORT': 5432,
}
}
Beliebiger Projektname/settings.py
WSGI_APPLICATION = 'Beliebiger Projektname.wsgi.application'
Starten Sie den Container bis zu diesem Zeitpunkt, sobald die Einstellungen abgeschlossen sind.
docker-compose up
docker-compose run web python manage.py startapp einen beliebigen Anwendungsnamen
web
-Verzeichnisses (Verzeichnis für Django
) auf der Hostseite wie folgt.┣web
┃ ┗ Beliebiges Projektnamenverzeichnis/
┃ ┗Dockerfile
┃ ┗requirements.txt
┃ ┗manage.py
┃ ┗ Verzeichnis beliebiger Anwendungsnamen/
┃ ┃ ┗__init__.py
┃ ┃ ┗admin.py
┃ ┃ ┗apps.py
┃ ┃ ┗migrations/
┃ ┃ ┃ ┗__init__.py
┃ ┃ ┗models.py
┃ ┃ ┗tests.py
┃ ┃ ┗views.py
2.admin (Administratorbildschirm aktivieren) und statische Dateien laden
INSTALLED_APPS
in settings.py
folgendermaßen aussieht:Beliebiges Projektnamenverzeichnis/settings.py
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
docker-compose exec web python manage.py migrate
Beliebiges Projektnamenverzeichnis/settings.py
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.10/howto/static-files/
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
docker-compose run web python manage.py collectstatic --noinput
docker-compose exec -it web python manage.py createsuperuser
Ich habe festgestellt, dass das Erstellen einer Umgebung mit "Docker" nicht den Spezifikationen jedes Frameworks und jeder Middleware entspricht. Jetzt, da Sie eine Umgebung mit der Kombination von "Docker" + "Django" erstellen können, können Sie anscheinend mit der Entwicklung einzelner Projekte fortfahren. Wie ich im Ausblick geschrieben habe, möchte ich die Herausforderung annehmen, da es ein Vorteil von "Docker" ist, dass es einfach ist, Mikrodienste zu konfigurieren. Wenn Sie Fehler in den veröffentlichten Informationen finden, möchten wir diese untersuchen und korrigieren. Vielen Dank für Ihre Mitarbeit.
Recommended Posts