sourcecode

도커를 통해 mariadb 연결이 실패하는 이유는 무엇입니까?

codebag 2023. 8. 26. 11:22
반응형

도커를 통해 mariadb 연결이 실패하는 이유는 무엇입니까?

docker-compose.yml은 다음과 같습니다.

version: '3'

services:
  database:
    build:
      context: ./database
    environment:
      - MYSQL_DATABASE=${DATABASE_NAME}
      - MYSQL_USER=${DATABASE_USER}
      - MYSQL_PASSWORD=${DATABASE_PASSWORD}
      - MYSQL_ROOT_PASSWORD=${DATABASE_ROOT_PASSWORD}
    ports:
      - "3306:3306"
    volumes:
      - ./database/init.sql:/docker-entrypoint-initdb.d/init.sql
      - ./database/data:/var/lib/mysql

  php-fpm:
    build:
      context: ./php-fpm
    depends_on:
      - database
    environment:
      - APP_ENV=${APP_ENV}
      - APP_SECRET=${APP_SECRET}
      - DATABASE_URL=mysql://${DATABASE_USER}:${DATABASE_PASSWORD}@database:3306/${DATABASE_NAME}?serverVersion=5.7
    volumes:
      - ../src:/var/www

  nginx:
    build:
      context: ./nginx
    volumes:
      - ../src:/var/www
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
      - ./nginx/sites/:/etc/nginx/sites-available
      - ./nginx/conf.d/:/etc/nginx/conf.d
      - ./logs:/var/log
    depends_on:
      - php-fpm
    ports:
      - "80:80"
      - "443:443"

다음 .env 파일 사용:

DATABASE_NAME=testDB
DATABASE_USER=appuser
DATABASE_PASSWORD=apppassword
DATABASE_ROOT_PASSWORD=password

APP_ENV=dev
APP_SECRET=24e17c47430bd2044a61c131c1cf6990

Iran 도커 합성 빌드 및 도커 합성 후 결과:

Version: '10.5.4-MariaDB-1:10.5.4+maria~focal'  socket: '/run/mysqld/mysqld.sock'  port: 3306  mariadb.org binary distribution
database_1  | 2020-06-25 17:13:10 3 [Warning] Aborted connection 3 to db: 'unconnected' user: 'unauthenticated' host: 'symfonytestproject_php-fpm_1.symfonytestproject_default' (This connection closed normally without authentication)

그리고 이제 콘솔이 멈춰서 저는 강제로 그만두어야 합니다.

항상 모든 것을 시도했습니다. 볼륨 제거, 볼륨 재구축...저는 이 문제를 도와줄 수 있는 사람이 있을 때 매우 감사합니다.

언급URL : https://stackoverflow.com/questions/62580918/why-does-mariadb-connection-fail-via-docker

반응형