検索

ホームページ  >  に質問  >  本文

Docker: Laravel 職人コマンドの実行中に接続拒否エラーが発生しました

<p>Docker で Laravel 5.4 を実行しています。これが私のドック構成です。 yml ファイル:</p> <pre class="brush:php;toolbar:false;">バージョン: '2' サービス: アプリ: コンテナ名: laravel_app 画像: webdevops/php-apache-dev:ubuntu-16.04 リンク: -mysql 依存: -mysql ポート: - 8888:80 ボリューム: - 。:/アプリ 環境: ドッカー: '本当' WEB_DOCUMENT_ROOT: '/app/public' WEB_NO_CACHE_PATTERN: '.(.*)$$' 作業ディレクトリ: '/app' mysql: 画像: mariadb: 最新 ポート: - 8889:80 環境: MYSQL_ROOT_PASSWORD: '開発' MYSQL_DATABASE: '開発' MYSQL_USER: '開発者' MYSQL_PASSWORD: 'dev'</pre> <p>これは私の <code>.env</code> ファイルの関連部分です:</p> <pre class="brush:php;toolbar:false;">DB_CONNECTION=mysql DB_HOST=mysql DB_PORT=8889 DB_DATABASE=dev DB_USERNAME=dev DB_PASSWORD=dev</pre> <p>Laravel のウェルカム ページが表示されます。これは機能しています。しかし、php 職人移行を実行すると、次のエラーが発生します: </p> <ブロック引用> <p>SQLSTATE[HY000] [2002] 接続が拒否されました (SQL: select * from information_schema.tables where table_schema = dev and table_name = migrations)</p> </blockquote> <p>.env ファイル内のホストとポートのパラメータを変更してみました。 </p>
P粉787820396P粉787820396556日前628

全員に返信(2)返信します

  • P粉295728625

    P粉2957286252023-08-08 13:47:57

    127.0.0.1の代わりにmysqlコンテナの名前を入力します

    リーリー

    返事
    0
  • P粉225961749

    P粉2259617492023-08-08 12:59:00

    まず、docker-compose.yml ファイルを編集します

    リーリー

    次に、.env ファイルに正しいデータベース ポートを設定します。

    データベース ポートが間違っています。 Docker 内で実行されているデータベース インスタンスを介して公開ポートに接続しようとしています。この場合、.env ファイルで DB_PORT=3306

    を使用する必要があります。

    返事
    0
  • キャンセル返事