我正在尝试在aws上启动railsapi。我创建了一个elastic beanstalk应用程序,创建了一个postgresql rds,并设置了codepipeline,但是当我尝试部署时,我得到了一个错误,上面写着“cannotconnecterror:error connecting to redis”。我的应用程序使用redis缓存用户登录证书,当我在本地运行它时,我只需在终端中键入“redis server”在“rails s”之前,它就像一个符咒一样工作。我试过创建一个elasticache示例,但我不知道如何将它连接到我的应用程序。我也不确定使用elasticache是否有点过火,是否可以更好地配置应用程序,使其在部署时开始运行redis而不使用它。我能想到的另一个可能的解决方案是,我是否有办法在我的ElasticBeanstalk应用程序上运行终端命令,然后手动部署redis?
我很难找到一个清晰的解释,我应该做什么来设置redis与弹性豆茎工作。有谁能帮我解释一下,或者给我指出一个好的资源?
1条答案
按热度按时间euoag5mw1#
如果有什么方法可以让我在elastic beanstalk应用程序上运行终端命令,然后手动部署redis?
是的,你能做到。eb允许您通过.ebextensions编写定制脚本。因此,使用它,您可以安装和设置您的本地redis服务器上的电子商务。
要安装redis,请执行以下操作
10_install_redis.config
在你的.ebextensions
可以使用配置文件:您必须在上述基础上进一步设置和定制redis服务器以满足您的需要。
然而,在您的eb示例上运行redis并不是一个很好的实践。与运行aws管理的elasticache相比,如果您想节省成本,最好将它放在您的eb环境之外,例如在单独的ec2示例或ecs容器上。