Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verknüpfen von Django- und MySQL-Containern mit docker-compose

In Django settings.py Datei stellen Sie sicher, dass Sie etwas wie:

haben
DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 'django1',
    'USER': 'django',
    'PASSWORD': 'password', 
    'HOST': 'db',
    'PORT': 3306,
    }
}

dann in Ihrer docker-compose.yml Datei stellen Sie sicher, dass Sie etwas in der Art von:

haben
db:
  image: mysql
  environment:
    MYSQL_ROOT_PASSWORD: docker
    MYSQL_DATABASE: docker
    MYSQL_USER: docker
    MYSQL_PASSWORD: docker

Führen Sie dann gemäß dem Docker/Django-Tutorial, dem Sie folgen, Folgendes erneut aus, um alles neu zu erstellen, und die Dinge sollten anfangen zu funktionieren

docker-compose run web django-admin.py startproject composeexample .

Als Antwort auf eine weitere Frage, Docker benötigt die mysql-Root-Passwort-Variable beim Erstellen neuer Datenbanken.

BEARBEITEN:run hinzugefügt zu docker-compose Oben; siehe Kommentar bearbeiten