Closed nickboucart closed 8 years ago
Where did you get the credentials? The admin user has a root password we don't expose publicly, so you might just be using the service's password.
I was using the service username and password. I took those from the result of dokku mongo:info.
Right, I think you need the admin credentials instead, there is a ROOTPASSWORD
file for each service, might want to try those?
I will try it out later today... I did find some things about robomongo not being able to connect to mongo 3.x, so it might be an issue there.
Thanks for your fast response! Nick
hi guys, i was having same issue... im just wondering where can i get the ROOTPASSWORD
? or are you referring to the actual "ROOTPASS" of the server?
It's in something like /var/lib/dokku/services/mongo/SERVICE/ROOTPASSWORD
.
For services using a root password, we could display it when using the info
command
still no luck, im on digitalocean server connecting via robomongo, already tried the following:
1.) connect with username root / ROOTPASSWORD
2.) connect with username admin / ROOTPASSWORD
3.) the credentials given from dokku mongo:info dbname
4.) connect using ssh tunnel
i managed to connect with the server with ssh tunnel but always end up having "authorization failed"
@silverbux That’s strange, you should be able to connect to mongo. Does the mongo:connect
command work?
I know I had issues with errbit and mongo 3.x but that’s because of the mongoid driver (IIRC) not handling correctly auth with mongo 3.x. Using mongo 2.6.x works without any problem.
Could you try maybe with a 2.6.x version of mongo?
@Flink your correct the problem was the version 3.x
, i switched to version 2.6.11
and it works. Thanks! ^^
Closing as this is a client issue, not one with our plugin.
@silverbux what where you settings finally in Robomongo?
@malixsys with SSH tunnel, dont forget to use the port that dokku exposed.
@silverbux so you mongo:expose, take the 1st port , connect with robomongo to localhost:port with ssh through root@YOUR_DROPLET_IP with auth admin:ROOTPASSWORD@admin? Cause I get unauthorized...
for some reason the "localhost" doesnt work for me too, i used public ip instead. regarding your ssh tunnel settings, just use your regular ssh settings. this might help.
http://codehyper.com/installing-mongodb-to-dokku-and-fixing-remote-access-issue/
Oh! OK! Would you mind telling me what you have in each tab of your robomongo? You can of course paraphrase any sensitive info like MY_DROPLET_IP
yep sure thing, here you go
Connection tab
name: dokkuserver
address: <MY_DROPLET_IP>
port: 12571
Authentication tab
database: <DATABASE_NAME>
username: <DATABASE_USERNAME>
pass: <DATABASE_PASSWORD>
SSH tab
[x] Use SSH tunnel ( checked )
SSH address: <MY_DROPLET_IP>
port: 22
username: <SSH_USERNAME>
ssh auth method: password
password: <SSH_PASSWORD>
Super! And the Auth tab info comes from mongo:info right?
On Jan 20, 2016, 02:23 -0500, Alex Quiambaonotifications@github.com, wrote:
yep sure thing, here you go
Connection tab name: dokkuserver address:
port: 12571 Authentication tab database: username: pass: SSH tab [x] Use SSH tunnel ( checked ) SSH address: port: 22 username: ssh auth method: password password: — Reply to this email directly orview it on GitHub(https://github.com/dokku/dokku-mongo/issues/39#issuecomment-173116938).
@malixsys yep correct
It doesn't work for me because of this: http://stackoverflow.com/a/31476552/856468
@josegonzalez can we have a setting when using mongo:create
to do a db.system.version.insert({ "_id" : "authSchema", "currentVersion" : 3 })
?
@silverbux @josegonzalez I added a PR but until then:
cat /var/lib/dokku/services/mongo/YOUR_SERVICE/ROOTPASSWORD
dokku mongo:connect YOUR_SERVICE
use admin
db.auth('admin', ROOTPASSWORD)
db.runCommand({ grantRolesToUser: "admin", roles: [ "__system", "root", "userAdminAnyDatabase",
"dbAdminAnyDatabase",
"readWriteAnyDatabase"] })
schema.currentVersion = 3
var schema = db.system.version.findOne({"_id" : "authSchema"})
db.system.version.save(schema)
exit
dokku mongo:restart YOUR_SERVICE```
then reconnect and
```db.createUser( { user: "someUser", pwd: "some_secret_passw0rdz", roles: [ { role: "dbOwner", db: "YOUR_SERVICE" } ] });```
Hi,
I'm trying to connect to a mongo service from outside of dokku (e.g. my development macbook). I understand that I need to issue dokku mongo:expose but I can't seem to connect...
I use robomongo to connect, I have setup ssh tunnel to the machine dokku is running on, but I can't access the database. I use localhost as my host, one of the ports I received from mongo:expose as port, and I'm authenticating with the "admin" database with and as credentials. Robomongo says it can connect but cannot authenticate...
Any suggestions?
Thanks! Nick.