Como obter a variável de ambiente do arquivo .env para um docker-compose.yml?

Suthan Bala

Eu tenho um .envarquivo e um arquivo docker-compose. Eu faço referência ao arquivo env usando a env_filepropriedade no docker-compose. Em seguida, uso a interpolação de variável para definir outra variável de ambiente usando a variável definida no arquivo .env. Por algum motivo, o Docker não reconhece a variável definida no arquivo .env.

app.env :

MYSQL_DATABASE=wordpress
DB_USER=root
MYSQL_ROOT_PASSWORD=example

docker-compose.yml :

version: '3.1'
services:
  wordpress:
    container_name: 'wp'
    build: .
    restart: unless-stopped
    links:
      - mysql
    env_file:
      - app.env
    environment:
      - WORDPRESS_DB_USER=${DB_USER}
      - WORDPRESS_DB_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - WORDPRESS_DB_NAME=${MYSQL_DATABASE}
    ports:
      - 80:80
nickgryg

Parece que você confundiu o significado da opção de configuração env_file . Ele está passando várias variáveis ​​de ambiente de um arquivo externo para os contêineres de um serviço. É o mesmo que environment, mas são carregados do arquivo.

Se você quiser docker composereconhecer a variável definida no .envarquivo, ela deve ser exatamente um arquivo .env .

Para conseguir o que deseja, você precisa:

1. Renomear app.envpara .env:

mv app.env .env

2. Exclua a env_fileopção de configuração de docker-compose.yaml:

version: '3.1'
services:
  wordpress:
    container_name: 'wp'
    build: .
    restart: unless-stopped
    links:
      - mysql
    environment:
      - WORDPRESS_DB_USER=${DB_USER}
      - WORDPRESS_DB_PASSWORD=${MYSQL_ROOT_PASSWORD}
      - WORDPRESS_DB_NAME=${MYSQL_DATABASE}
    ports:
      - 80:80

Este artigo é coletado da Internet.

Se houver alguma infração, entre em [email protected] Delete.

editar em
0

deixe-me dizer algumas palavras

0comentários
loginDepois de participar da revisão

Artigos relacionados

Como faço para usar variáveis de ambiente no arquivo .env em docker-compose.yml?

Como faço para usar variáveis de ambiente no arquivo .env em docker-compose.yml?

Passe a variável de ambiente do arquivo env externo para o contêiner usando docker compose

Passe a variável de ambiente do arquivo env externo para o contêiner usando docker compose

docker - Como configurar o banco de dados do ambiente para o arquivo docker-compose.yml a partir do arquivo env.ini externo?

Como usar variáveis de ambiente em um arquivo .env para preencher outra variável de ambiente no mesmo arquivo .env

Como usar uma variável de ambiente de um docker-compose.yml em um Dockerfile?

variável de ambiente docker-compose.yml para variável de ambiente php

Use o nome ou id do contêiner como variável de ambiente no docker compose yml

Passe uma variável para um Dockerfile de um arquivo docker-compose.yml

Como obter o valor da variável de ambiente do arquivo .env no script de shell do Dockerfile?

docker-compose usa variáveis de ambiente do arquivo .env

Como faço para escrever um arquivo docker para usar a variável de ambiente PORT no Serviço de Aplicativo do Azure

Como posso definir variáveis de ambiente para teste dredd em um arquivo dredd.yml?

Como posso definir variáveis de ambiente para teste dredd em um arquivo dredd.yml?

Como usar variáveis de ambiente docker-compose para preencher o arquivo de configuração

Como usar variáveis de ambiente docker-compose para preencher o arquivo de configuração

Passando variáveis env de um serviço para outro dentro de docker-compose.yml

Como obter a formatação adequada das variáveis de ambiente do Docker-compose Multiline?

Como posso obter variáveis de ambiente do docker compose no Quasar Framework?

Ações do GitHub: Como obter o conteúdo do arquivo VERSION na variável de ambiente?

Como avaliar uma variável dinâmica em um arquivo docker-compose.yml?

Shell como definir variáveis de ambiente do arquivo .env

Passe a variável ENV com docker-compose.yml no tempo de execução para o Dockerfile

Variáveis de ambiente de env fiile no entrypoint em docker-compose.yml

Dockerfile - use a variável de ambiente do arquivo env

Como obter a variável de ambiente no arquivo csproj?

Terraform: passando o arquivo JSON como valor de variável de ambiente com um arquivo de unidade do systemd dentro do contêiner do docker

Local adicional de configuração do Spring como variável de ambiente em docker-compose

TOP lista

  1. 1

    R Shiny: use HTML em funções (como textInput, checkboxGroupInput)

  2. 2

    UITextView não está exibindo texto longo

  3. 3

    Dependência circular de diálogo personalizado

  4. 4

    Acessando relatório de campanhas na AdMob usando a API do Adsense

  5. 5

    Como assinar digitalmente um documento PDF com assinatura e texto visíveis usando Java

  6. 6

    R Folheto. Dados de pontos de grupo em células para resumir muitos pontos de dados

  7. 7

    Setas rotuladas horizontais apontando para uma linha vertical

  8. 8

    O Chromium e o Firefox exibem as cores de maneira diferente e não sei qual deles está fazendo certo

  9. 9

    Definir um clipe em uma trama nascida no mar

  10. 10

    Por que meus intervalos de confiança de 95% da minha regressão multivariada estão sendo plotados como uma linha de loess?

  11. 11

    Como dinamizar um Dataframe do pandas em Python?

  12. 12

    regex para destacar novos caracteres de linha no início e no fim

  13. 13

    Why isn't my C# .Net Core Rest API route finding my method?

  14. 14

    Como obter a entrada de trás de diálogo em treeview pyqt5 python 3

  15. 15

    Tabela CSS: barra de rolagem para a primeira coluna e largura automática para a coluna restante

  16. 16

    How to create dynamic navigation menu select from database using Codeigniter?

  17. 17

    Como recuperar parâmetros de entrada usando C #?

  18. 18

    Changing long, lat values of Polygon coordinates in python

  19. 19

    Livros sobre criptografia do muito básico ao muito avançado

  20. 20

    Método \ "POST \" não permitido no framework Django rest com ações extras & ModelViewset

  21. 21

    Pesquisa classificada, conte números abaixo do valor desejado

quentelabel

Arquivo