代码之家  ›  专栏  ›  技术社区  ›  ltdev

docker-compose.yml可以从laravel.env文件读取数据库连接吗?

  •  1
  • ltdev  · 技术社区  · 7 年前

    - root-dir
    -- docker
    -- src //contains laravel application
    ---.env
    -- docker-compose.yml
    

    正如您在laravel.env和docker-compose.yml文件中可能知道的,您需要指定到db的连接设置。

    // .env
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=homestead
    DB_USERNAME=homestead
    DB_PASSWORD=secret
    
    // docker-compose.yml
    environment:
       - MYSQL_ROOT_PASSWORD=secret
       - MYSQL_DATABASE=homestead
       - MYSQL_USER=homestead
       - MYSQL_PASSWORD=secret
    

    1 回复  |  直到 7 年前
        1
  •  2
  •   Hemant Singh    7 年前

    你可以这样做(从Docker文档 https://docs.docker.com/compose/environment-variables/#the-env-file

    $ cat .env
    TAG=v1.5
    
    $ cat docker-compose.yml
    version: '3'
    services:
      web:
        image: "webapp:${TAG}"
    

    env_文件配置选项

    web:
      env_file:
        - web-variables.env