Es kann keine Verbindung zum MySQL-Docker-Container von einem anderen Container im selben Netzwerk hergestellt werden, der Zugriff ist jedoch von außen möglich
P粉116631591
P粉116631591 2023-09-12 20:37:02
0
1
333

Ich habe zwei Container – „node.js“ und „mysql“, die beide so eingerichtet sind, dass sie sich im selben Netzwerk befinden. Durch Ausführen von docker-compose up -d werden die Container gestartet und sie funktionieren. Ich kann von außen auf „node.js“ bzw. „mysql“ zugreifen.

Aber ich kann von „node.js“ aus keine Verbindung zu „mysql“ herstellen. Mache ich hier etwas falsch?

version: '3'

services:
  app:
    build:
      context: .
      dockerfile: Dockerfile
    env_file: .env
    volumes:
      - .:/app
    ports:
      - ${APP_PORT}:${APP_PORT}
    depends_on:
      - mysql
    networks:
      - appnet

  mysql:
    image: mysql:8.0
    restart: always
    env_file: .env
    environment:
      - MYSQL_ROOT_HOST=%
      - MYSQL_ROOT_PASSWORD=${DB_PASSWORD}
      - MYSQL_DATABASE=${DB_NAME}
      - MYSQL_USER=${DB_USERNAME}
      - MYSQL_PASSWORD=${DB_PASSWORD}
    volumes:
      - mysql-data:/var/lib/mysql
    ports:
      - ${DB_PORT}:${DB_PORT}
    networks:
      - appnet

networks:
  appnet:

volumes:
  mysql-data:

Um eine Verbindung zu MySQL herzustellen, habe ich das Paket „knex.js“ verwendet und es funktioniert einwandfrei auf meinem lokalen Computer (gleiche Docker-Konfiguration)

P粉116631591
P粉116631591

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!