xirixiz / dsmr-reader-docker

DSMR Reader in Docker.
https://hub.docker.com/r/xirixiz/dsmr-reader-docker
112 stars 33 forks source link

OperationalError: could not translate host name "dsmrdb" to address: Name does not resolve #331

Closed Koal4 closed 1 year ago

Koal4 commented 1 year ago

Support guidelines

I've found an issue and checked that ...

Description

Om de x dagen/wkn krijg ik onderstaande foutmelding.

OperationalError: could not translate host name "dsmrdb" to address: Name does not resolve

image

Ik kan dan de container of the host herstarten wat ik wil. DSRM reader werkt gewoon niet meer. MAAR als ik docker opnieuw recreate (samen met pull new latest image) dan werkt het weer naar behoren. Echter begint dit een ritueel te worden na x aantal dgn of wkn en dan krijg ik dit weer terug.

Expected behaviour

Stop crashing

Actual behaviour

`Server Error Sorry, something unexpected happened. Exception: OperationalError: could not translate host name "dsmrdb" to address: Name does not resolve Traceback: File "/usr/local/lib/python3.11/site-packages/django/core/handlers/base.py", line 181, in _get_response response = wrapped_callback(request, *callback_args, **callback_kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/views/generic/base.py", line 70, in view return self.dispatch(request, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/app/dsmr_frontend/mixins.py", line 10, in dispatch if not FrontendSettings.get_solo().always_require_login: ^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/solo/models.py", line 55, in get_solo obj, created = cls.objects.get_or_create(pk=cls.singleton_instance_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/manager.py", line 85, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 581, in get_or_create return self.get(**kwargs), False ^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 431, in get num = len(clone) ^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 262, in len self._fetch_all()

File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 1324, in _fetch_all self._result_cache = list(self._iterable_class(self)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/query.py", line 51, in iter results = compiler.execute_sql(chunked_fetch=self.chunked_fetch, chunk_size=self.chunk_size) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/models/sql/compiler.py", line 1173, in execute_sql cursor = self.connection.cursor() ^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/utils/asyncio.py", line 33, in inner return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/backends/base/base.py", line 259, in cursor return self._cursor() ^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/backends/base/base.py", line 235, in _cursor self.ensure_connection()

File "/usr/local/lib/python3.11/site-packages/django/utils/asyncio.py", line 33, in inner return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/backends/base/base.py", line 218, in ensure_connection with self.wrap_database_errors:

File "/usr/local/lib/python3.11/site-packages/django/db/utils.py", line 90, in exit raise dj_exc_value.with_traceback(traceback) from exc_value

File "/usr/local/lib/python3.11/site-packages/django/db/backends/base/base.py", line 219, in ensure_connection self.connect()

File "/usr/local/lib/python3.11/site-packages/django/utils/asyncio.py", line 33, in inner return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/backends/base/base.py", line 200, in connect self.connection = self.get_new_connection(conn_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/utils/asyncio.py", line 33, in inner return func(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/django/db/backends/postgresql/base.py", line 187, in get_new_connection connection = Database.connect(**conn_params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

File "/usr/local/lib/python3.11/site-packages/psycopg2/init.py", line 122, in connect conn = _connect(dsn, connection_factory=connection_factory, **kwasync) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `

Steps to reproduce

It takes times.

Docker info

debian@debian:~$ sudo docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Docker Buildx (Docker Inc., v0.9.1-docker)
  scan: Docker Scan (Docker Inc., v0.23.0)

Server:
 Containers: 5
  Running: 3
  Paused: 0
  Stopped: 2
 Images: 4
 Server Version: 23.0.2
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: systemd
 Cgroup Version: 2
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 2806fc1057397dbaeefbea0e4e17bddfbd388f38
 runc version: v1.1.5-0-gf19387a
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: builtin
  cgroupns
 Kernel Version: 5.10.0-19-amd64
 Operating System: Debian GNU/Linux 11 (bullseye)
 OSType: linux
 Architecture: x86_64
 CPUs: 2
 Total Memory: 2.887GiB
 Name: debian
 ID: 7ECE:ZW3I:U2XE:5VNV:6XER:DVRV:FAQ7:PUEJ:OBDA:YTLH:ASLM:YLUF
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Version

Docker Compose version v2.0.1

Linux debian 5.10.0-19-amd64 #1 SMP Debian 5.10.149-2 (2022-10-21) x86_64 GNU/Linux

Docker compose

debian@debian:~/docker/dsmr_reader$ sudo docker-compose config
services:
  dsmr:
    cap_add:
    - NET_ADMIN
    container_name: dsmr
    depends_on:
      dsmrdb:
        condition: service_healthy
    environment:
      DJANGO_TIME_ZONE: Europe/Amsterdam
      TZ: Europe/Amsterdam
      VIRTUAL_HOST: localhost
    healthcheck:
      test:
      - CMD
      - curl
      - -Lsf
      - http://127.0.0.1/about
      - -o
      - /dev/null
      - -w
      - HTTP_%{http_code}
      timeout: 5s
      interval: 10s
      retries: 10
    image: xirixiz/dsmr-reader-docker:latest
    links:
    - dsmrdb
    networks:
      default: null
    ports:
    - mode: ingress
      target: 80
      published: 7777
      protocol: tcp
    - mode: ingress
      target: 443
      published: 7779
      protocol: tcp
    restart: always
    volumes:
    - type: bind
      source: /etc/localtime
      target: /etc/localtime
      read_only: true
      bind:
        create_host_path: true
    - type: bind
      source: ./dsmr_backups
      target: /app/backups
      bind:
        create_host_path: true
  dsmrdb:
    container_name: dsmrdb
    environment:
      PG_TZ: Europe/Amsterdam
      POSTGRES_DB: dsmrreader
      POSTGRES_PASSWORD: dsmrreader
      POSTGRES_USER: dsmrreader
      TZ: Europe/Amsterdam
    healthcheck:
      test:
      - CMD-SHELL
      - pg_isready -U dsmrreader
      timeout: 5s
      interval: 10s
      retries: 10
    image: postgres:13-alpine
    networks:
      default: null
    restart: always
    volumes:
    - type: bind
      source: ./dsmrdb
      target: /var/lib/postgresql/data
      bind:
        create_host_path: true
networks:
  default:
    name: dsmr_reader_default
debian@debian:~/docker/dsmr_reader$

Container logs

_dsmr_logs (1).txt

Additional info

Idee wat hier de oorzaak van is?