2016-07-10 7 views
0

私はLaravelアプリケーションにmysql dbを持っています。私は、このドッキングウィンドウ-compose.ymlを使用してドッキングウィンドウでそれを実行しようとしている:ドッキング・コンテナの「ベース・テーブルまたはビューが見つかりません」エラー

  • 移行
  • password_resets
  • ユーザー
:私のホストデータベース上で

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 

は、3つのテーブルを持っています

アプリを実行してデータベースを参照しようとすると、次のようなエラーが表示されます。

Connection.phpライン715における

QueryException:SQLSTATE [42S02]:ベーステーブルまたはビューが見つかりません:メール=(メールユーザからSELECT * @:表 'regappbase.users' は(SQL存在しませんghhjghj77))

どのようにしてデータベースのregappbaseを作成できますか?データを格納する必要はありません。スキーマのみ

答えて

0

まあ、私は2日間過ごす変数を変更しようとしたり、データ専用コンテナを使用したり、SQLスクリプトをマウントしたりすることができます。 しかし、ウェブコンテナを実行することからの決定があった:

php artisan migrate 
1

mysqlイメージ(hub.docker.com)のドキュメントを確認してください。 .SQLスクリプトをマウントできるディレクトリがあります。mysqlはこのディレクトリ内の各ファイルをループスルーして実行します。

"新しいインスタンスを初期化する コンテナを初めて起動すると、新しいデータベースmysqlが提供された設定変数で初期化され、さらに拡張子の付いたファイルが実行されます。あなたはmysqlサービスをそのディレクトリにマウントして寄付されたデータを持つカスタムイメージを提供することで簡単にmysqlサービスにデータを入れることができます "

関連する問題