首页 > 解决方案 > 我的 Laravel 容器中的路由没有更新

问题描述

我有这个 docker-compose:

version: '3'
services:
  app:
    build:
      context: .
      dockerfile: .docker/Dockerfile
    image: laravel-docker
    ports:
      - 8080:80
    volumes:
      - ./:/var/www
    links:
      - mysql
      - redis
    environment:
      DB_HOST: mysql
      DB_DATABASE: laravel_docker
      DB_USERNAME: app
      DB_PASSWORD: password
      REDIS_HOST: redis
      SESSION_DRIVER: redis
      CACHE_DRIVER: redis
  mysql:
    image: mysql:5.7
    ports:
      - 13306:3306
    environment:
      MYSQL_DATABASE: laravel_docker
      MYSQL_USER: app
      MYSQL_PASSWORD: password
      MYSQL_ROOT_PASSWORD: password
  redis:
    image: redis:4.0-alpine
    ports:
      - 16379:6379

还有这个 Dockerfile:

FROM php:7.1.8-apache

COPY . /srv/app
COPY .docker/vhost.conf /etc/apache2/sites-available/000-default.conf

WORKDIR /srv/app


RUN docker-php-ext-install mbstring pdo pdo_mysql \
    && chown -R www-data:www-data /srv/app
RUN a2enmod rewrite

这是我使用 MySQL 和 Redis 运行 Laravel 容器的配置。一切正常,但是当我尝试添加(或更新)新路由时遇到问题:它不会出现,直到我不停止所有容器并使用--build标签重新启动它们。

有没有办法在不重新启动容器的情况下添加和更新路由?

标签: laraveldockerdocker-compose

解决方案


ssh 到应用程序容器并从项目目录运行以下命令:

php artisan route:clear


推荐阅读