首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法连接到AWS Docdb

无法连接到AWS Docdb
EN

Stack Overflow用户
提问于 2019-07-19 04:12:47
回答 1查看 136关注 0票数 0

我们正在尝试从errbit连接到aws docdb,但没有成功。这是docdb中的连接字符串:

代码语言:javascript
复制
mongodb://user:<insertYourPassword>@dev-docdb-cluster.cluster-xxxx.us-east-1.docdb.amazonaws.com:27017/?ssl=true&ssl_ca_certs=rds-combined-ca-bundle.pem&replicaSet=rs0

我们可以连接到Atlas db,但是我们用于atlas的连接字符串格式是这样的:

代码语言:javascript
复制
mongodb://user:pass@cluster-shard-00-00-xxx.mongodb.net:27017,cluster-shard-00-01-xxx.mongodb.net:27017,cluster-shard-00-02-xxx.mongodb.net:27017/errbit?ssl=true&replicaSet=Cluster-shard-0&authSource=admin&w=majority
EN

回答 1

Stack Overflow用户

发布于 2019-08-22 22:36:52

您需要将config/mongo.rb文件更改为如下所示:

代码语言:javascript
复制
log_level = Logger.const_get Errbit::Config.log_level.upcase

Mongoid.logger.level = log_level
Mongo::Logger.level = log_level

Mongoid.configure do |config|
  uri = if Errbit::Config.mongo_url == 'mongodb://localhost'
          "mongodb://localhost/errbit_#{Rails.env}"
        else
          Errbit::Config.mongo_url
        end

  config.load_configuration(
    clients: {
      default: {
        uri: uri,
        options: { ssl_ca_cert: Rails.root.join('rds-combined-ca-bundle.pem') }
      }
    },
    options: {
      use_activesupport_time_zone: true
    }
  )
end

您可以注意到,这与当前的完全相同,除了我添加了:options: { ssl_ca_cert: Rails.root.join('rds-combined-ca-bundle.pem') }

在这样做之后,它确实对我起作用了:)当然你需要在你的Rails根文件夹中有rds-combined-ca-bundle.pem文件。

wget https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

是的,我必须用下面的代码创建一个docker镜像:

代码语言:javascript
复制
FROM errbit/errbit:latest
LABEL maintainer="Tarek N. Elsamni <tarek.samni+stackoverflow@gmail.com>"

WORKDIR /app

RUN wget https://s3.amazonaws.com/rds-downloads/rds-combined-ca-bundle.pem

COPY ["mongo.rb", "/app/config/"]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57102010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档