使用docker设置一个新的Laravel安装,这是docker-compose.yml文件:
version: '2'
services:
web:
    image: nginx
    restart: always
    links:
        - "fpm"
    volumes:
        - ./build/volumes/nginx/conf.d:/etc/nginx/conf.d:ro
    volumes_from:
        - fpm
    ports:
        - 8080:80
mysql:
    image: mysql
    environment:
        MYSQL_ROOT_PASSWORD: "[OMMITTED]"
        MYSQL_DATABASE: "[OMMITTED]"
        MYSQL_USER: "[OMMITTED]"
        MYSQL_PASSWORD: "[OMMITTED]"
fpm:
    build:
        context: .
    volumes:
        - .:/var/wwwdocker-compose up -d工作正常,我可以在http://localhost:8080/上看到web服务器,但是当尝试进行任何类型的数据库连接时,我会收到一条PDO::__construct(): php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known错误消息。
我的.env文件包含以下内容( DB_HOST是容器名称):
DB_CONNECTION=mysql
DB_HOST=container_mysql_1
DB_PORT=3306
DB_DATABASE=[OMMITTED]
DB_USERNAME=[OMMITTED]
DB_PASSWORD=[OMMITTED]然而,试图将localhost用作DB_HOST时,它会返回Access denied for user错误,我已经检查了详细信息是否正确。我猜码头的集装箱没在说话吧?
发布于 2017-11-13 15:35:22
你错过了码头链接:
fpm:
    build:
        context: .
    volumes:
        - .:/var/www
    links:
      - mysql:mysqlhttps://stackoverflow.com/questions/47267875
复制相似问题