Php Docker和Laravel 8迁移问题

Php Docker和Laravel 8迁移问题,php,laravel,docker,Php,Laravel,Docker,我遵循了这个教程,顺便说一句,这是一个很棒的教程。 安装了8 Laravel版本,当我尝试运行PHP artisan migrate时,出现了以下问题: ParseError syntax error, unexpected ')' at vendor/laravel/framework/src/Illuminate/Bus/BusServiceProvider.php:51 47▕ return new DatabaseBatchReposit

我遵循了这个教程,顺便说一句,这是一个很棒的教程。 安装了8 Laravel版本,当我尝试运行PHP artisan migrate时,出现了以下问题:

 ParseError 

  syntax error, unexpected ')'

  at vendor/laravel/framework/src/Illuminate/Bus/BusServiceProvider.php:51
     47▕             return new DatabaseBatchRepository(
     48▕                 $app->make(BatchFactory::class),
     49▕                 $app->make('db')->connection(config('queue.batching.database')),
     50▕                 config('queue.batching.table', 'job_batches'),
  ➜  51▕             );
     52▕         });
     53▕     }
     54▕ 
     55▕     /**

      +1 vendor frames 
  2   [internal]:0
      Composer\Autoload\ClassLoader::loadClass("Illuminate\Bus\BusServiceProvider")

      +5 vendor frames 
  8   artisan:37
      Illuminate\Foundation\Console\Kernel::handle(Object(Symfony\Component\Console\Input\ArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
我猜这和Laravel8有关,当运行到Docker环境中时

让我们看看docker-compose.yaml

version: '3'
networks:
  laravel:

services:
  nginx:
    image: nginx:stable-alpine
    container_name: nginx
    ports:
      - "8088:80"
    volumes:
      - ./src:/var/www/html
      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
    depends_on:
      - php
      - mysql
    networks:
      - laravel
  mysql:
    image: mysql:5.7.22
    container_name: mysql
    restart: unless-stopped
    tty: true
    ports:
      - "4306:3306"
    volumes:
      - ./mysql:/var/lib/mysql
    environment:
      MYSQL_DATABASE: homestead
      MYSQL_USER: homestead
      MYSQL_PASSWORD: secret
      MYSQL_ROOT_PASSWORD: secret
      SERVICE_TAGS: dev
      SERVICE_NAME: mysql
    networks:
      - laravel

  php:
    build: 
      context: .
      dockerfile: Dockerfile
    container_name: php
    volumes:
      - ./src:/var/www/html
    ports:
      - "9000:9000"
    networks:
      - laravel
码头工人

FROM php:7.2-fpm-alpine
RUN docker-php-ext-install pdo pdo_mysql
FROM php:7.4-fpm-alpine

RUN docker-php-ext-install pdo pdo_mysql

docker容器已经启动并运行得很好,那么会是什么呢?

您需要在docker文件中更改php版本

FROM php:7.2-fpm-alpine
RUN docker-php-ext-install pdo pdo_mysql
FROM php:7.4-fpm-alpine

RUN docker-php-ext-install pdo pdo_mysql

阅读文档,你需要PHP7.3+哦,好的!凉的我将升级到7.3!谢谢@FelippeDuarte!它像微风一样工作!