我有一个长期运行的请求,这些请求由我想使用 Redis 排队的服务处理。所以我有一个基于 Passenger 和 Ruby 2.4 构建的 Rack 应用程序。当我向 Rack 应用程序发出请求时,我希望请求转到 Redis 进程进行排队。我应该能够用 session ID 和状态进行回复。 我怎样才能让它在 Docker 上运行?
最佳答案
docker 容器的主要问题是它只运行单个进程。因此,您有两种选择可以在 docker 上运行您的应用程序。
打破你的技术堆栈 1. rail application 2. passanger 3. Redis 然后为每个堆栈进程创建单独的图像并使用 docker-compose 来集成你的堆栈图像。
在单个图像中使用 supervisor 来控制您的多个进程,即在您的图像中将 supervisord 作为 CMD 运行。
关于ruby - Docker Ruby Rack Redis 队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43398842/