MYSQL Docker容器中的卷出现问题

时间:2020-04-16 14:09:32

标签: mysql docker docker-compose vagrant

我正在尝试使用Docker设置本地开发环境,该Docker本身在Ubuntu(由Vagrant管理)的虚拟机中运行。在一个典型的Laravel项目中,我在Laravel的存储内部创建了一个单独的 docker / mysql 目录(当然带有.gitignore),我打算将其用作MYSQL数据库的卷。文件。但是,当我启动docker-compose文件时,它会为mysql容器输出以下消息:

mysql-db_1 | 2020-04-16 13:45:17 + 00:00 [注意] [入口]: MySQL服务器5.7.29-1debian10的入口点脚本已启动。 mysql-db_1 | 2020-04-16 13:45:17 + 00:00 [注意] [入口]:切换 专用用户'mysql'mysql-db_1 | 2020-04-16 13:45:17 + 00:00 [注意] [入口点]:MySQL服务器的入口点脚本 5.7.29-1debian10已启动。 mysql-db_1 | 2020-04-16 13:45:17 + 00:00 [注意] [入口]:初始化数据库文件mysql-db_1 | 2020-04-16T13:45:17.557251Z 0 [警告]带有隐式的TIMESTAMP 不建议使用DEFAULT值。请用 --explicit_defaults_for_timestamp服务器选项(有关更多详细信息,请参阅文档)。 mysql-db_1 | 2020-04-16T13:45:17.560836Z 0 [错误] --initialize指定,但数据目录中包含文件。中止。 mysql-db_1 | 2020-04-16T13:45:17.560904Z 0 [错误]正在中止

结果,在提到的目录(ib_logfile1 ...)中出现了3个日志文件。有人知道我该如何解决这个问题?

我的docker-compose文件:

version: '3'

services:   
  nginx:
    build:
      context: ./
      dockerfile: docker/nginx.docker
    volumes:
      - ./:/var/www
    ports:
      - 8080:80
    depends_on:
      - php-fpm

  php-fpm:
    build:
      context: ./
      dockerfile: docker/php-fpm.docker
    volumes:
      - ./:/var/www
    environment:
      - DB_PORT=3306
      - DB_HOST=mysql-db
      - DB_USERNAME=app
      - DB_PASSWORD=secret
      - DB_DATABASE=app
    depends_on:
      - mysql-db

  mysql-db:
    image: mysql:5.7
    volumes:
      - ./storage/docker/mysql:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=secret
      - MYSQL_USER=app
      - MYSQL_PASSWORD=secret
      - MYSQL_DATABASE=app
    ports:
      - 33061:3306

  composer:
    image: composer:1.9
    volumes:
      - ./:/var/www
    working_dir: /var/www
    command: composer install
    depends_on:
      - php-fpm

0 个答案:

没有答案