首页 > 解决方案 > 如何使用 bash 命令找出 docker deamon API URL

问题描述

我想找出 docker deamon 的“Engine API URL”,以便从 Pycharm 连接到它。我在 Airflow 上运行 python 代码,其中 DAG 使用 docker 命令执行 BashOperator。我应该将什么传递给 BashOperator 以了解 API URL。我尝试了“docker inspect”,但它没有返回任何可以让我更接近答案的东西。

标签: pythondocker

解决方案


假设docker-machine不可用,您可以docker使用以下脚本获取上下文:

ENGINE_URL=$([ -n "$DOCKER_HOST" ] && echo $DOCKER_HOST || docker context inspect --format '{{ index .Endpoints.do
cker.Host }}' ${DOCKER_CONTEXT:-default});

该脚本从DOCKER_HOSTenv 变量中返回地址(如果存在)或从活动上下文的数据中返回。

ENGINE_URL 将包含地址

echo $ENGINE_URL; # e.g., tcp://192.168.23.138:2376

推荐阅读