【问题标题】:Use environment variable in a quote在引号中使用环境变量
【发布时间】:2015-03-05 23:51:08
【问题描述】:

我正在尝试在我的 Docker 配置文件 (/etc/sysconfig/docker) 中使用 环境变量,具体的行是:

other_args="--insecure-registry $PRIVATE_REGISTRY_URL:5000"

注意PRIVATE_REGISTRY_URL 是我需要使用的环境变量。不过我也试过:

other_args="--insecure-registry ${PRIVATE_REGISTRY_URL}:5000"
other_args="--insecure-registry \$PRIVATE_REGISTRY_URL:5000"
other_args="--insecure-registry '$PRIVATE_REGISTRY_URL':5000"
other_args="--insecure-registry ${PRIVATE_REGISTRY_URL}_*:5000"

到目前为止似乎没有任何工作。请提示我。谢谢!

【问题讨论】:

  • 你重启了 docker daemon 吗?当这个PRIVATE_REGISTRY_URL 被设置?
  • 是的,我在配置文件更新后重新启动了 Docker 守护进程。 PRIVATE_REGISTRY_URL 在使用前被设置为环境变量。无论如何,请参考我的回答我有一个解决方法。
  • 它可以在没有解决方法的情况下解决,你使用哪个操作系统?我可以验证。
  • CentOS 6.5。在/etc/sysconfig/docker 中使用other_args="--insecure-registry $PRIVATE_REGISTRY_URL:5000" 启动docker 服务后,ps -ef | grep docker 显示:/usr/bin/docker -d --insecure-registry :5000 如果您仔细观察,您会发现$PRIVATE_REGISTRY_URL 被解析为空字符串。

标签: environment-variables docker


【解决方案1】:

我有一个解决方法。我没有在配置文件中使用环境变量,而是运行了一个脚本来 echo 参数并附加到配置文件中。

echo other_args=\"--insecure-registry $PRIVATE_REGISTRY_URL:5000\" >> /etc/sysconfig/docker

【讨论】:

    猜你喜欢
    • 2016-04-12
    • 1970-01-01
    • 2010-11-27
    • 1970-01-01
    • 1970-01-01
    • 2022-10-26
    • 2020-07-22
    • 2012-05-14
    • 2016-10-18
    相关资源
    最近更新 更多