当前位置: 首页 > news >正文

superset 解决在 mac 电脑上发送 slack 通知的问题

参考文档: https://superset.apache.org/docs/configuration/alerts-reports/

核心配置:

FROM apache/superset:3.1.0USER rootRUN apt-get update && \apt-get install --no-install-recommends -y firefox-esrENV GECKODRIVER_VERSION=0.29.0
RUN wget -q https://github.com/mozilla/geckodriver/releases/download/v${GECKODRIVER_VERSION}/geckodriver-v${GECKODRIVER_VERSION}-linux64.tar.gz && \tar -x geckodriver -zf geckodriver-v${GECKODRIVER_VERSION}-linux64.tar.gz -O > /usr/bin/geckodriver && \chmod 755 /usr/bin/geckodriver && \rm geckodriver-v${GECKODRIVER_VERSION}-linux64.tar.gzRUN pip install --no-cache gevent psycopg2 redisUSER superset

这玩意特别坑, 特别是在 Mac 电脑上.

这里之所以没有选择使用 chromedriver 是因为 chromedriver 对于 macOS 的 M1 芯片支持的还不是很友好.

拉取代码:

git clone --depth=1  https://github.com/apache/superset.git

这个框架看似开源,但是实际上坑特别多,很不友好.

关于启动服务的参考文档:https://superset.apache.org/docs/installation/docker-compose

这里面提供了Docker compose 的多种方案, 经过无数次的测试, 只有依赖于官方稳定版本的才最不容易踩坑.

所以, 我本地的启动命令是:

export TAG=3.1.0
docker compose -f docker-compose-image-tag.yml up

本文的主要目标集中于如何发送 slack 通知, 所以介绍一下最关键的配置.

首先是浏览器的配置, 我选择使用 Firefox.

# 无头浏览器的配置,使用谷歌浏览器
# WEBDRIVER_TYPE = "chrome"
WEBDRIVER_TYPE = "firefox"
WEBDRIVER_OPTION_ARGS = ["--force-device-scale-factor=2.0","--high-dpi-support=2.0","--headless","--disable-gpu","--disable-dev-shm-usage","--no-sandbox","--disable-setuid-sandbox","--disable-extensions",
]
WEBDRIVER_BASEURL = "http://superset:8088/"  # When using docker compose baseurl should be http://superset_app:8088/
# The base URL for the email report hyperlinks.
WEBDRIVER_BASEURL_USER_FRIENDLY = WEBDRIVER_BASEURL

然后要记得配置 slack:

# 允许发送通知
ENABLE_ALERTS = True
ENABLE_SCHEDULED_EMAIL_REPORTS = True# SLACK 的API权限配置
SLACK_API_TOKEN = "xoxb-"CELERY_CONFIG = CeleryConfigSCREENSHOT_LOCATE_WAIT = 100
SCREENSHOT_LOAD_WAIT = 600

这些配置完以后, 最难的地方就来了, 那就是怎么安装 Firefox 的驱动.

参考地址: https://github.com/mozilla/geckodriver/releases

由于我的 Docker 是在 macOS 上构建的, 所以需要的驱动也是 arm 架构的.

在这里插入图片描述

官方文档中介绍的 0.29 没有 ARM 架构的版本驱动, 所以我找了比较接近的 0.32 的 aarch64, 也就是截图中的第一个.

但是即使你把驱动安装好了, 也还有很多坑, 要解决这几个坑需要花不少时间.

我直接说我的解决方案.

如图:
在这里插入图片描述

第一个是安装这个 Firefox 的东西:

apt-get install --no-install-recommends -y firefox-esr

第二个是安装驱动:

wget https://github.com/mozilla/geckodriver/releases/download/v0.32.0/geckodriver-v0.32.0-linux-aarch64.tar.gztar -xzvf geckodriver-v0.32.0-linux-aarch64.tar.gzmv ./geckodriver /usr/local/bin/

第三个就是安装 Python 包:

pip install --no-cache gevent

以上是一次真实的解决过程.

特此记录.

仅供参考.

http://www.lryc.cn/news/444826.html

相关文章:

  • SQL_UNION
  • 高等代数笔记(2)————(弱/强)数学归纳法
  • 模拟自然的本质:与IBM量子计算研究的问答
  • Robot Operating System——带有时间戳和坐标系信息的多边形信息
  • 内网穿透(当使用支付宝沙箱的时候需要内网穿透进行回调)
  • Contact Form 7最新5.9.8版错误修复方案
  • 【第十一章:Sentosa_DSML社区版-机器学习之分类】
  • kafka3.8的基本操作
  • 如何检测并阻止机器人活动
  • 《linux系统》基础操作
  • EMT-LTR--学习任务间关系的多目标多任务优化
  • MySQL record 08 part
  • 打造以太坊数据监控利器:InfluxDB与Grafana构建Geth可视化分析平台
  • 对onlyoffice进行定制化开发
  • 使用llama.cpp 在推理MiniCPM-1.2B模型
  • 分布式环境中,接口超时重试带来的的幂等问题如何解决?
  • 设计一个推荐系统:使用协同过滤算法
  • Linux 基本指令(二)
  • Facebook的用户隐私保护:从争议到革新
  • 计算机前沿技术-人工智能算法-大语言模型-最新论文阅读-2024-09-23
  • C++(学习)2024.9.20
  • 让AI激发创作力:OpenAI分享5位专业作家利用ChatGPT写作的案例技巧
  • UEFI EDK2框架学习 (一)
  • 基于 BERT 的自定义中文命名实体识别实现
  • 中秋节特别游戏:给玉兔投喂月饼
  • python pdf转word或excel
  • GNU链接器(LD):位置计数器(.)功能及实例解析
  • 学习记录:js算法(四十三):翻转二叉树
  • 关于 SQL 的 JOIN 操作
  • 聊聊AUTOSAR:基于Vector MICROSAR的TC8测试开发方案