我已经通过Diaglogflow插件和(当前)在Dialogflow网站上进行内联编辑的启用Firebase的实现脚本将Lita机器人连接到lita-api-ai代理。

我想将该Webhook转换为ruby并将其作为Lita本身的处理程序托管,但是Dialogflow在webhook端点上需要SSL。

我正在CoreOS上为Lita使用标准的docker setup,并且我想使用Let's Encrypt证书。我怎样才能做到这一点?我对Docker或Lita之类的ruby应用程序(与成熟的nginx / Apache设置相对)不熟悉,可以围绕Docker处理SSL吗?我是否需要修改Docker镜像本身?

最佳答案

解决此问题的最佳方法是安装Web服务器(nginx,caddy等)以处理SSL终止。然后,它应该将请求代理到Docker实例。尽管需要更改Lita systemd脚本以包含配置和环境变量(例如VIRTUAL_HOSTexpose),但您可以将nginx-proxyLetsEncrypt companion一起用作基本设置。

nginx-proxy侦听容器更改以动态更新其代理,但是我为nginx-proxy和LetsEncrypt随播创建了systemd服务,以便它们在启动时启动。

09-26 10:32