Bluemix IBM Container with Mongodb connection failed
# Dockerizing MongoDB: Dockerfile for building MongoDB images # Based on ubuntu:latest, installs MongoDB following the instructions from: # http://d...content-available-to-author-only...b.org/manual/tutorial/install-mongodb-on-ubuntu/ # Format: FROM repository[:version] FROM ubuntu:latest # Format: MAINTAINER Name <firstname.lastname@example.org> MAINTAINER Name <email@example.com> # Installation: # Import MongoDB public GPG key AND create a MongoDB list file RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 RUN echo "deb http://r...content-available-to-author-only...b.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.0 multiverse" | tee/etc/apt/sources.list.d/mongodb-org-3.0.list # Update apt-get sources AND install MongoDB RUN apt-get update && apt-get install -y mongodb-org # Create the MongoDB data directory RUN mkdir -p /data/db # Expose port 27017 from the container to the host EXPOSE 27017 # Set usr/bin/mongod as the dockerized entry-point application ENTRYPOINT ["/usr/bin/mongod"]
After running it locally, it all works perfectly but upon running it on Bluemix and assigning to it public IP adress, connection attempt results with following error:
$ mongo --host 22.214.171.124 MongoDB shell version: 2.6.3 connecting to: 126.96.36.199:27017/test 2015-11-01T17:24:10.557+0100 Error: couldn't connect to server 188.8.131.52:27017 (184.108.40.206), connection attempt failed at src/mongo/shell/mongo.js:148 exception: connect failed
This is the image of the container configuraion in bluemix
Could you tell me why i’m not able to make the connection? Am i doing something wrong?
2 Solutions collect form web for “Bluemix IBM Container with Mongodb connection failed”
The error you are having is because port 27017 is not open in IBM Containers.
I suggest you open a support ticket with IBM Bluemix Support and ask this port to be opened or you can check with IBM Bluemix Support team for an alternative open port you can use as well.
You can open a support ticket in the following link:
I believe you will have to just use the private IP for the container. ex. 10.x.x.x. The port 27017 should be open if your application is running also in the IBM Containers. I realize this can be a pain when testing this locally on your own machine, and would be easier to just have the public IP address opening port 27017.