dMd
dMd

Reputation: 89

mysql.connector.errors.InterfaceError: 2003: Can't connect to MySQL server on '127.0.0.1:3306' (111 Connection refused)

Here is my utils.py file

import mysql.connector
mydb = mysql.connector.connect(
   host="127.0.0.1",
   user="root",
   passwd="aspilos",
   database="aspilos_log"
)
mycursor = mydb.cursor()
mycursor.execute("SELECT PHONE_NUMBER FROM category2")
results = mycursor.fetchall()
for i in zip(*results):
   number = list(i)
   number1 = '+2348076548894'
   print (number)

Here is my docker-compose.yml file

version: '3.4'

services:
 db:
   image: mysql
 ports:
  - '3306:3306'
environment:
   MYSQL_DATABASE: 'app'
   MYSQL_USER: 'root'
   MYSQL_PASSWORD: 'aspilos'
   MYSQL_ROOT_PASSWORD: 'aspilos'
web:
  build: .
  command: python manage.py runserver 0.0.0.0:8000
  volumes:
  - .:/aspilos
  ports:
  - "8000:8000"
  depends_on:
  - db

Here is my settings.py file

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'app',
'USER': 'root',
'PASSWORD': 'aspilos',
'HOST': 'db',
'PORT': '3306',
},

}

Upvotes: 0

Views: 15943

Answers (1)

vivekyad4v
vivekyad4v

Reputation: 14903

In your utils.py, you are using host as "127.0.0.1", change it to db.

mydb = mysql.connector.connect(
   host="db",
   user="root",
   passwd="aspilos",
   database="aspilos_log"
)

Upvotes: 1

Related Questions