为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Python中热重载grpc-server?

如何在Python中热重载grpc-server?

繁星coding 2023-12-26 16:24:10
我正在使用 grpc 开发一些 python 微服务,并且使用 docker 作为 cassandra 数据库和微服务。有没有办法在 docker-compose 中设置更改时重新加载?我猜测首先我需要将代码安装为卷,但我没有看到像 Flask 那样在 GRPC 服务器上重新加载的方法。
查看完整描述

1 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

watchdog[watchmedo]我们与 grpc 服务和 Docker 一起使用。


安装看门狗或添加到您的requirements.txt文件中


python -m pip install watchdog[watchmedo]


然后在docker-compose.yml添加watchmedo auto-restart --recursive --pattern="*.py" --directory="/usr/src/app/" python -- -m app到容器中的位置--directory是 docker 容器中包含应用程序的目录,并且python -- -m app是启动 grpc 服务器的文件。在此示例中,启动服务器的文件称为app.py:


  app:

    build:

      context: ./app/

      dockerfile: ./Dockerfile

      target: app

    command: watchmedo auto-restart --recursive --pattern="*.py" --directory="/usr/src/app/" python -- -m app

    volumes:

      - ./app/:/usr/src/app/


查看完整回答
反对 回复 2023-12-26
  • 1 回答
  • 0 关注
  • 106 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信