【问题标题】:How to rename exported environment variable in docker如何在docker中重命名导出的环境变量
【发布时间】:2016-08-10 20:50:51
【问题描述】:

假设我有一个应用程序(我不能修改代码源本身)在一个等待的容器中

  • DB_USR
  • DB_HOST
  • DB_PASSWD
  • DB_NAME

作为环境变量来连接 MySQL 数据库 所以我把这个容器链接到一个 MySQL 容器

但导出到我的应用程序容器的 MySQL 容器中的环境变量名称不匹配。

目前我发现这样做的唯一方法是将应用程序二进制文件包装到 bash 脚本中,并导出环境变量以进行匹配。

docker 是否提供了任何标准/更好的方法来进行此映射?

【问题讨论】:

    标签: docker environment-variables


    【解决方案1】:

    您是否尝试过使用以下命令在 docker 中运行应用程序:

    docker run -d \
      -e DB_HOST=${MY_OWN_ENV_HOSTNAME} \
      -e DB_USR=${MY_OWN_ENV_USERNAME} \
      -e DB_PASSWD=${MY_OWN_ENV_PASSWORD} \
      -e DB_NAME=${MY_OWN_ENV_DBNAME} \
      your-application-container
    

    当然还有运行所需的额外参数。

    或者,您可以使用环境变量创建文件 env.txt:

    # Definitions of environment variables
    DB_HOST=${MY_OWN_ENV_HOSTNAME}
    DB_USR=${MY_OWN_ENV_USERNAME}
    DB_PASSWD=${MY_OWN_ENV_PASSWORD}
    DB_NAME=${MY_OWN_ENV_DBNAME}
    

    然后使用命令在 docker 中运行应用程序

    docker run -d --env-file ./env.txt your-application-container
    

    【讨论】:

      猜你喜欢
      • 2021-06-16
      • 1970-01-01
      • 1970-01-01
      • 2014-12-15
      • 1970-01-01
      • 1970-01-01
      • 2016-07-16
      相关资源
      最近更新 更多