获取宿主机 ID

https://segmentfault.com/q/1010000042803292

docker run .. -e HOST_HOSTNAME=`hostname` ..

使用

-e HOST_HOSTNAME=`hostname`

将调用主机名并将其返回用作名为 HOST_HOSTNAME 的环境变量,当然您可以根据需要自定义密钥。

请注意,这适用于 bash shell,如果您使用不同的 shell,您可能需要查看“反引号”的替代方案,例如 fish shell 替代方案是

docker run .. -e HOST_HOSTNAME=(hostname) ..

获取容器ID

os.uname()[1]

结合

    if os.getenv("HOST_HOSTNAME") is None:
        conf.ECS_NAME = f"{os.uname()[1]}"
    else:
        conf.ECS_NAME = f"{os.getenv("HOST_HOSTNAME")}-{os.uname()[1]}"

测试代码

python3 -c "import os; print(os.uname()[1])"

python3 -c "import os; print(f\\"{os.getenv('HOST_HOSTNAME')}-{os.uname()[1]}\\")"