【发布时间】:2018-02-25 02:22:27
【问题描述】:
我正在尝试在 python 代码中使用操作系统环境变量。下面是例子。
环境变量
导出 DOCKER_HOST=10.0.0.5 出口端口=1002Python 代码
导入操作系统 进口码头 主机 = os.environ['DOCKER_HOST'] 端口 = os.environ['PORT'] 客户端 = docker.APIClient(base_url='tcp://host:port')它应该注入主机和端口的变量,但它不起作用。我尝试添加无助的.format
错误
赛跑(最近一次通话最后): 文件“./update.py”,第 24 行,在 客户端 = docker.APIClient(base_url="tcp://docker_host:docker_port") 文件“/usr/local/lib/python2.7/dist-packages/docker/api/client.py”,第 109 行,在 __init__ base_url,IS_WINDOWS_PLATFORM,tls=bool(tls) 文件“/usr/local/lib/python2.7/dist-packages/docker/utils/utils.py”,第 363 行,在 parse_host "无效端口:{0}".format(addr) docker.errors.DockerException:端口无效:docker_host:docker_port【问题讨论】:
-
我知道 - 我标记的可能重复项建议您完全按照您已经在做的事情做。但是你没有给我们任何信息来告诉我们为什么“它不起作用”。到底发生了什么?你确定变量存在吗?
-
你必须像这样进行字符串格式化:
base_url='tcp://{host}:{port}'.format(host=host, port=port)
标签: python linux docker environment-variables dockerpy