运行 使用 Docker DC/OS 上的气流

Running Airflow on DC/OS using Docker

我已经使用他们的 vagrant 图像在本地设置 DC/OS,我想使用 DC/OS 到 运行 包含 Airflow 的 Docker 图像,这样我就可以 运行 Airflow 教程中的基本 Hello World。

这是一个相当小众的用例,在线上没有任何关于此实际实施的指南或讨论。

简单来说,我应该怎么做?

您转到“服务”选项卡,单击“+”并添加 JSON 任务定义:

{
  "id": "/airflow",
  "instances": 1,
  "container": {
    "type": "DOCKER",
    "volumes": [],
    "docker": {
      "image": "puckel/docker-airflow"
    },
    "portMappings": [
      {
        "containerPort": 8080,
        "hostPort": 0,
        "protocol": "tcp"
      },
      {
        "containerPort": 5555,
        "hostPort": 0,
        "protocol": "tcp"
      },
      {
        "containerPort": 8793,
        "hostPort": 0,
        "protocol": "tcp"
      }
    ]
  },
  "mem": 1024,
  "requirePorts": false,
  "networks": [
    {
      "mode": "container/bridge"
    }
  ],
  "healthChecks": [],
  "fetch": [],
  "constraints": [],
  "cpus": 1,
  "labels": {
    "DCOS_SERVICE_PORT_INDEX": "0"
  }
}

这将启动 this Docker image。当服务启动时,您应该能够单击服务名称旁边的图标并导航到 Airflow UI (/service/airflow).

注意:我对 Airflow 的经验为零,但这是启动任何任务的一般方法。您肯定需要配置数据库等。