• I was following along in Django For Professionals and I got the following error message. I checked the documentation and it lists the error as an exception but does not provide much detail. I checked stackoverflow but I have not been able to find answers. Has anyone run into this error before?
  • I was following along in Django For Professionals and I got the following error message. I checked the documentation and it lists the error as an exception but does not provide much detail. I checked stackoverflow but I have not been able to find answers. Has anyone run into this error before?

    Docker.yml file (updated) : Hastebin

    The above exception was the direct cause of the following exception:

    Traceback (most recent call last):
    django.db.utils.OperationalError: could not translate host name “db” to address: nodename nor servname provided, or not known

    Hastebin is sh*t because it rate limits me when I try to look at it a second time. Why not just post your config here, use 3 backticks in front and after.

    And I doubt this has anything to do with the Docker Hub product, which hosts container images.

    The above exception was the direct cause of the following exception:
    Traceback (most recent call last):
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/manage.py", line 22, in <module>
        main()
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/manage.py", line 18, in main
        execute_from_command_line(sys.argv)
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
        utility.execute()
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/__init__.py", line 440, in execute
        self.fetch_command(subcommand).run_from_argv(self.argv)
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/base.py", line 414, in run_from_argv
        self.execute(*args, **cmd_options)
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/base.py", line 460, in execute
        output = self.handle(*args, **options)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/base.py", line 98, in wrapped
        res = handle_func(*args, **kwargs)
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/commands/migrate.py", line 91, in handle
        self.check(databases=[database])
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/management/base.py", line 487, in check
        all_issues = checks.run_checks(
                     ^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/checks/registry.py", line 88, in run_checks
        new_errors = check(app_configs=app_configs, databases=databases)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/core/checks/model_checks.py", line 36, in check_all_models
        errors.extend(model.check(**kwargs))
                      ^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/models/base.py", line 1461, in check
        *cls._check_indexes(databases),
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/models/base.py", line 1864, in _check_indexes
        connection.features.supports_covering_indexes
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/functional.py", line 49, in __get__
        res = instance.__dict__[self.name] = self.func(instance)
                                             ^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/postgresql/features.py", line 84, in is_postgresql_11
        return self.connection.pg_version >= 110000
               ^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/functional.py", line 49, in __get__
        res = instance.__dict__[self.name] = self.func(instance)
                                             ^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/postgresql/base.py", line 354, in pg_version
        with self.temporary_connection():
      File "/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/contextlib.py", line 137, in __enter__
        return next(self.gen)
               ^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 639, in temporary_connection
        with self.cursor() as cursor:
             ^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/asyncio.py", line 26, in inner
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 284, in cursor
        return self._cursor()
               ^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 260, in _cursor
        self.ensure_connection()
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/asyncio.py", line 26, in inner
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 243, in ensure_connection
        with self.wrap_database_errors:
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/utils.py", line 91, in __exit__
        raise dj_exc_value.with_traceback(traceback) from exc_value
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 244, in ensure_connection
        self.connect()
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/asyncio.py", line 26, in inner
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/base/base.py", line 225, in connect
        self.connection = self.get_new_connection(conn_params)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/utils/asyncio.py", line 26, in inner
        return func(*args, **kwargs)
               ^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/django/db/backends/postgresql/base.py", line 203, in get_new_connection
        connection = Database.connect(**conn_params)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "/Users/andrewstribling/Desktop/Programming/projects/django/code/django_for_beginners_books/django_for_professionals/code/ch3-postgresql/.venv/lib/python3.11/site-packages/psycopg2/__init__.py", line 122, in connect
        conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    django.db.utils.OperationalError: could not translate host name "db" to address: nodename nor servname provided, or not known
    

    docker-compose.yml

    version: "3.9"
    services:
        build: .
        command: python /code/manage.py runserver 0.0.0.0:8000
        volumes:
          - .:/code
        ports:
          - 8000:8000
        depends_on:
        image: postgres:13
        volumes:
          - postgres_data:/var/lib/postgresql/data/
        environment:
          - "POSTGRES_HOST_AUTH_METHOD=trust"
    volumes:
      postgres_data:
    

    Dockerfile

    # Pull base image
    FROM python:3.10.4-slim-bullseye
    # Set environment variables
    ENV PIP_DISABLE_PIP_VERSION_CHECK 1
    ENV PYTHONDONTWRITEBYTECODE 1
    ENV PYTHONUNBUFFERED 1
    # Set work directory
    WORKDIR /code
    # Install dependencies
    COPY ./requirements.txt .
    RUN pip install -r requirements.txt
    # Copy project
    COPY . .
                  

    After running docker build, somehow some way it started working. Its almost as if docker is utilizing psycopg instead of my enviornment.

    I am not certain why it did not work correctly the first time but somehow some way it is has been resolved.