试图摆脱使用Sail,并且想让我的应用程序不使用Sail.到目前为止,我无法让MySQL服务器开始运行.我已经try 在docker-compose中将env DB_HOST更改为数据库的名称,当我执行docker compose up --build时,服务器看起来正在运行,但是当我执行php artisan migrate:fresh --seed之后,似乎什么都不起作用.如有任何帮助,我们将不胜感激!

我的 docker -组成:

version: "3.8"

services:
  laravel-vue-app:
    build: .
    ports:
        - "8080:8080"
    depends_on:
        - mysql
    volumes:
        - .:/var/www/html
        - /var/www/html/node_modules
        - /var/www/html/vendor
    networks:
        - app-network
mysql:
    image: "mysql/mysql-server:8.0"
    container_name: database
    ports:
        - "${FORWARD_DB_PORT:-3306}:3306"
    environment:
        MYSQL_ROOT_PASSWORD: "${DB_PASSWORD}"
        MYSQL_DATABASE: "${DB_DATABASE}"
        MYSQL_USER: "${DB_USERNAME}"
        MYSQL_PASSWORD: "${DB_PASSWORD}"
        MYSQL_ALLOW_EMPTY_PASSWORD: "yes"
volumes:
        - mysql-data:/var/lib/mysql
networks:
        - app-network

和我的ENV:

DB_CONNECTION=mysql
DB_HOST=database
DB_PORT=3306

在运行php artisan Migrate:resh--Seed时,我在新的终端中执行docker-compose up--Build后得到的错误

SQLSTATE[HY000] [2002] php_network_getaddresses: 
getaddrinfo for database failed: nodename nor servname provided, or not known (Connection: mysql, SQL: select table_name as `name`, 
(data_length + index_length) as `size`, table_comment as `comment`, 
engine as `engine`, table_collation as `collation` from 
information_schema.tables where table_schema = 'bigapp' and table_type
in ('BASE TABLE', 'SYSTEM VERSIONED') order by table_name)

推荐答案

您必须为DB_HOST传递MySQL容器IP地址,而不是容器名称,或者database必须指向MySQL容器网络地址.

Php相关问答推荐

SQLSTATE [42S02]:找不到基表或视图:1146 Table eshop. sessions不存在'''

模型中的Laravel自定义查询字段

LaravelEloquent 地根据表中的值提取记录

不包括WooCommerce中单独销售的产品

Laravel Nova不使用数组键作为筛选器中的选项值

PHP文件上载问题-";Move_Uploaded_Files";未按预期工作

重命名 WordPress 中现有的自定义分类法名称和标签

PHP 8.2 弃用日志(log)存储在 Laravel 10.22.0 中的哪里?

WooCommerce 以编程方式添加的费用不会持续存在

使用 wp_footer 挂钩添加一些 CSS 不起作用

使用 phpseclib 验证 RSA-PSS

使用 Composer 找不到 Google APIClient 类

如何在WooCommerce中为访客购买者分配自定义客户代码

Laravel的Storage::exists返回false,而file_exists返回true.

如何在 laravel 中的同一个 slug 上显示不同的内容?

yii2 sql迁移覆盖新更改的记录

使用 PHP 正则表达式从仅包含具有现有顺序的顶级标签的 XML 文档中搜索和创建数组

PHP/Laravel 中的自定义时区

laravel 中的 OrderBy json 列

检测字符串是否包含Letter with Tilde或Letter + Combining Tilde