我已经使用docker compose安装了airflow 2.0.2,如下所述https://airflow.apache.org/docs/apache-airflow/stable/start/docker.html.用过的docker组成。这里可以找到yml:https://airflow.apache.org/docs/apache-airflow/2.0.2/docker-compose.yaml
我想执行一个DAG,它通过API下载一些数据,并将其发送到运行在另一个docker容器(在另一个docker-compose管道中定义)中的Kafka服务器。到目前为止(没有使用airflow),我为kafka/zookeper容器使用了自定义docker网络;这就是为什么我还想将airflow docker容器添加到这个网络中。
因此,我将以下内容添加到气流的泊坞窗组成.yml中:
networks:
app-tier:
driver: bridge
name: app-tier
此外,我将网络
参数包含在 x-气流-公共
,如下所示:
version: '3'
x-airflow-common:
&airflow-common
build: .
image: ${AIRFLOW_IMAGE_NAME:-apache/airflow:2.0.2}
environment:
&airflow-common-env
AIRFLOW__CORE__EXECUTOR: CeleryExecutor
AIRFLOW__CORE__SQL_ALCHEMY_CONN: postgresql+psycopg2://airflow:airflow@postgres/airflow
AIRFLOW__CELERY__RESULT_BACKEND: db+postgresql://airflow:airflow@postgres/airflow
AIRFLOW__CELERY__BROKER_URL: redis://:@redis:6379/0
AIRFLOW__CORE__FERNET_KEY: ''
AIRFLOW__CORE__DAGS_ARE_PAUSED_AT_CREATION: 'false'
AIRFLOW__CORE__LOAD_EXAMPLES: 'false'
AIRFLOW__API__AUTH_BACKEND: 'airflow.api.auth.backend.basic_auth'
volumes:
- ./dags:/opt/airflow/dags
- ./logs:/opt/airflow/logs
- ./plugins:/opt/airflow/plugins
user: "${AIRFLOW_UID:-50000}:${AIRFLOW_GID:-50000}"
depends_on:
redis:
condition: service_healthy
postgres:
condition: service_healthy
networks:
- app-tier
但是,在启动docker compose管道时,除Postgres和Redis(worker、webserver、flower、scheduler)之外的所有容器的健康检查都失败,并显示以下html" target="_blank">消息:
daniel@Yoga:~/Schreibtisch/Projekte/db/airlow_neu$docker日志airlowWorker
BACKEND=postgresql psycopg2 db_HOST=postg雷斯
DB_PORT=5432错误!已达到最大重试次数 (20)。
最后的检查结果: $ run_nc “postgres” '5432' 回溯 (最近调用最后一个): 文件 “”, 行 1, 在 socket.gaierror: [Errno -3] 名称解析中的临时失败 无法解析为 IP 地址
我将其解释为Postgres数据库不再可访问,但我不知道如何解决这个问题。
通过包含外部
标签来解决:
networks:
default:
external: true
name: app-tier
本文向大家介绍Docker 将容器添加到网络,包括了Docker 将容器添加到网络的使用技巧和注意事项,需要的朋友参考一下 示例 此命令将myAwesomeApp-1容器连接到app-backend网络。将容器添加到用户定义的网络时,嵌入式DNS解析器(它不是功能齐全的DNS服务器,并且不可导出)允许网络上的每个容器解析同一网络上的其他容器。此简单的DNS解析器在默认网桥bridge网络上不可用。
docker-compose.yml 启动一个 order 和 一个 peer 节点。 orderer: image: hyperledger/fabric-orderer environment: - ORDERER_GENERAL_LEDGERTYPE=ram - ORDERER_GENERAL_BATCHTIMEOUT=10s - ORDERER_GENERAL_BAT
docker-compose.yml 启动一个 5 个节点的服务,包括 zookeeper、fabric-order 和 3 个 kafka 节点。
本文向大家介绍Docker网络上的用户定义网桥,包括了Docker网络上的用户定义网桥的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将讨论为什么应该在默认桥网络上使用用户定义的桥网络。我们还将使用实际示例进行演示。 如果您使用用户定义的网桥进行容器网络连接,则该网络中的所有容器会自动将所有必需的端口公开给彼此,而不是公开给外部世界。这增加了容器之间的互操作性,并提供了更好的隔离性。 使用
问题内容: 在Docker中使用自定义网络时 并尝试运行它,我得到了错误 错误:网络服务层已声明为外部,但找不到。请使用手动创建网络,然后重试。 是否可以使用docker-compose自动创建网络,还是除了首先手动创建网络外没有其他方法? 问题答案: 是使用现有网络。如果您想组成网络,只需执行以下操作: ..指示组成网络。它们将被命名为使用验证创建。 您还可以覆盖默认网络或指定更多属性。 ..将