docker集装箱中的“基础表或视图未find”错误

我有Laravel应用程序与MySQL数据库。 我试图在docker-compose.yml中使用Docker运行它:

load_balancer: image: tutum/haproxy links: - web ports: - "80:80" cache: image: redis web: image: andrewmclagan/nginx-hhvm links: - db - cache volumes: - ./:/var/www environment: - APP_ENV=local - DB_DATABASE=regappbase - DB_PASSWORD=Q1w2e3r4t5 - DB_HOST=db - VIRTUAL_HOST=laravel.local db: image: mysql environment: MYSQL_ROOT_PASSWORD: Q1w2e3r4t5 MYSQL_DATABASE: regappbase 

在我的主机数据库有三个表:

  • 迁移
  • password_resets
  • 用户

当我运行应用程序,并尝试引用数据库,我有这样的错误:

QueryException在Connection.php行715:SQLSTATE [42S02]:找不到基表或视图:表'regappbase.users'不存在(SQL:select * from users where email =(e-mail @ ghhjghj77))

我如何创build数据库regappbase? 我不需要存储数据,只需要架构

检查mysql映像文件(hub.docker.com)。 有一个目录,你可以挂载你的.SQL脚本,在容器上启动mysql将循环并执行这个目录中的每个文件。 使用这个来build立你的数据库模式

“初始化一个新的实例首次启动一个容器时,一个新的数据库mysql将被初始化为所提供的configurationvariables,而且它将执行扩展名为.sh和.sql的文件,该文件位于/ docker-entrypoint- initdb.d。你可以很容易地通过在这个目录中join一个SQL转储来填充你的mysql服务,并提供带有贡献数据的自定义图像“

那么,我花了两天试着改变variables,或者使用data-only-container,或者mount sql-scritps。 但决定是从运行web容器:

 php artisan migrate