docker compose mysql

Рейтинг: 0Ответов: 0Опубликовано: 14.02.2023

файл .env

DB_HOST=db
DB_PORT=3306
DB_DATABASE=test
DB_USERNAME=test
DB_PASSWORD=test
DATABASE_URL="mysql://${DB_USERNAME}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_DATABASE}?schema=public"

Docker file

version: '3.8'
services:
  test.api:
    build:
      dockerfile: Dockerfile
      context: .
      target: development
    volumes:
      - .:/usr/src/app
    env_file:
      - .env
    command: npm run start:dev
    ports:
      - 6545:6545
    networks:
      - test-nest-network
  redis:
    image: 'redis:alpine'
    ports:
      - '${FORWARD_REDIS_PORT:-6379}:6379'
    volumes:
      - test-redis:/data
    healthcheck:
      test: [ "CMD", "redis-cli", "ping" ]
      retries: 3
      timeout: 5s
  db:
    image: 'mysql/mysql-server:8.0'
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: '${DB_PASSWORD}'
      MYSQL_DATABASE: '${DB_DATABASE}'
      MYSQL_USER: '${DB_USERNAME}'
      MYSQL_PASSWORD: '${DB_PASSWORD}'
      MYSQL_ALLOW_EMPTY_PASSWORD: 1
    ports:
      - '3306:3306'
    networks:
      - test-nest-network
    volumes:
      - test-mysql:/var/lib/mysql

  adminer:
    image: adminer
    restart: always
    depends_on:
      - db
    ports:
      - 8080:8080
    networks:
      - test-nest-network
networks:
  test-nest-network:
volumes:
  test-redis:
    driver: local
  test-mysql:
    driver: local

при коннекте пишет

P1001: Can't reach database server at `db`:`3306`

Ответы

Ответов пока нет.