Docker compose v Azure: nelze se připojit k databázi

0

Otázka

Já jsem se snaží dostat SteVe OCPP server spustit v Azure Instance Kontejneru. Ale webové aplikace se nemůže připojit k databázi při běhu docker-compose up v Azure ACI kontextu. To běží v pohodě na místě.

Tady je docker compose souboru:

version: "3.0"

volumes:
  db-data:
    external: false

services:
  db:
    image: mariadb:10.4
    ports:
      - 3306:3306
    environment:
      MYSQL_RANDOM_ROOT_PASSWORD: "yes"
      MYSQL_DATABASE: stevedb
      MYSQL_USER: steve
      MYSQL_PASSWORD: changeme
  web:
    image: rainmakers/steve:latest
    links:
      - "db:mariadb"
    ports:
      - 8180:8180
      - 8443:8443
    depends_on:
      - db

To je jediná věc, kterou jsem se dostat do webové služby protokoly:

2021/11/23 13:20:57 Waiting for: tcp://mariadb:3306
2021/11/23 13:20:57 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:20:58 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:20:59 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:21:00 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:21:01 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:21:02 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s
2021/11/23 13:21:03 Problem with dial: dial tcp: lookup mariadb on 168.63.129.16:53: no such host. Sleeping 1s

To bude pokračovat za chvíli, dříve, než služba ukončí.

Nějaký nápad jak postupovat?

1

Nejlepší odpověď

1

Jsem geuss jsi se měl spojit s http://db:3306 místo mariadb:3306.

Ve výchozím nastavení Docker Compose verze 3 používá název služby jako hostname inter-kontejner sítí.

2021-11-23 14:57:43

Vypadá to, že to fungovalo...
Oystein

protože ve výchozím nastavení docker-compose 3 používá název služby ve vašem docker-compose.yml jako hostitele, viz o tom článek: medium.com/@datails/...
Robert-Jan Kuyper

Pokud to funguje, můžete jej označit jako zodpovězené
Robert-Jan Kuyper

Skončil jsem přejmenování služby mariadb místo toho, měnící se všechny řetězce připojení. Bylo jednodušší opravit. Ale díky za pomoc!
Oystein

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................