我有一个rasa聊天机器人应用程序,部署在Heroku上。我想在不同的控制台中运行两个命令来启动rasa和它的操作。这是我的码头文件:
FROM ubuntu:18.04
ENTRYPOINT []
RUN apt-get update && apt-get install -y python3 python3-pip && python3 -m pip install --no-cache --upgrade pip && pip3 install --no-cache rasa==1.5.3
ADD . /app/
RUN chmod +x /app/start_services1.sh
CMD /app/start_services1.sh
RUN chmod +x /app/start_services2.sh
CMD /app/start_services2.shstart_services1.sh文件:
cd app/
rasa run actions "*" --debug -p $PORTstart_services2.sh文件:
cd app/
rasa run --model models --enable-api --cors "*" --debug -p $PORT它只运行第二个.sh文件。rasa聊天机器人不执行操作就运行。我该怎么解决呢?
发布于 2020-04-25 19:24:33
这是不可能的,因为Heroku每个进程只公开一个端口。解决方案是部署两个应用程序: rasa核心和rasa动作服务器。
将heroku-endpoints.yml配置为在Heroku上使用Rasa SDK,即
action_endpoint:
url: "https://{heroku-app}.herokuapp.com/webhook"我已经实现了类似的解决方案(实际上部署了3个应用程序,因为我也需要自己的REST服务),可以随意查看https://github.com/perosa/AvatarRasaChatbot
https://stackoverflow.com/questions/61427988
复制相似问题