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

xooback

Eu tenho um arquivo docker-compose que tem um serviço que executa uma imagem de banco de dados postgres. As variáveis ​​de ambiente do banco de dados (usuário, senha, db_name) estão em um arquivo env chamado db.env:

DB_USERNAME=some_user
DB_PASSWORD=thepassword
DB_NAME=database

Como eu quero ter essas variáveis ​​apenas em um arquivo, eu queria usar este backand/db.envarquivo. O problema é que os nomes das variáveis ​​de ambiente diferem daqueles que são usados ​​pelo postgres (DB_USERNAME <=> POSTGRES_USER).

Este é o docker-compose.ymlarquivo:

services:
  db:
    image: postgres
    ports:
      - 5432:5432
    env_file: 
      - backend/db.env
    environment:
      - POSTGRES_PASSWORD=${DB_PASSWORD}
      - POSTGRES_USER=${DB_TEST}
      - POSTGRES_DB=${DB_DATABASE}

Tentei usar a mesma abordagem de usar o .envarquivo padrão : Variáveis ​​de ambiente no Compose .

LinPy

env_fileestará disponível no contêiner .envno próprio arquivo de composição, então você precisa usar .envaqui

Gambiarra:

for i in $(cat < db.env); do export $i;done && docker-compose up -d

db.env:

DB_USERNAME=some_user
DB_PASSWORD=thepassword
DB_NAME=database

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

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

Passe a variável de ambiente para o contêiner do Apache PHP Docker

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

A variável de ambiente não vai para o contêiner de docker-compose

docker-compose passando variáveis de ambiente para o contêiner é possível?

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

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

Passe a variável de ambiente do docker para o supervisord

Passando a variável de ambiente Masked Jenkins para o contêiner do Docker

Usando a variável de ambiente para o nome do volume no docker compose

A variável de ambiente de docker-compose não está sendo passada para o contêiner

No Docker Compose, as variáveis de ambiente de .env são agrupadas dentro das imagens ou estão disponíveis apenas para o contêiner?

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?

Como você passa uma variável de ambiente para o Solr em execução no Docker quando a variável de ambiente só existe dentro do contêiner?

Injetando variável de ambiente para contêineres docker usando docker-compose

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

Não é possível definir a variável de ambiente dentro do contêiner do docker ao chamar o arquivo sh do Dockerfile CMD

Como defino o ambiente para spring.datasource em um contêiner de boot do spring usando um arquivo YAML do Kubernetes? É o mesmo que Docker YAML?

Ação do GitHub: passe a variável de ambiente para a ação usando o PowerShell

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

Usando uma variável de ambiente (do arquivo `.env`) na função Twig personalizada no Symfony 4

Passe uma variável de ambiente para o Docker

No Makefile, use a variável de ambiente definida no contêiner do Docker para executar um comando

Use a variável de ambiente para definir a versão do contêiner dentro do Dockerfile

O serviço de aplicativo Web do Azure para contêineres Linux não coleta variáveis de ambiente do arquivo docker-compose

Não é possível editar o arquivo de ambiente com o sudo dentro do contêiner do Docker

Em relação à passagem de arquivo como variável env no contêiner docker

Como copiar o arquivo executável para o contêiner do Docker usando Testcontainers

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