I'm using Docker Desktop and trying to start 2 containers: mongodb and configuration/export for mongo db. I can successfully start mongodb container. From command line:
TCP 127.0.0.1:27017 0.0.0.0:0 LISTENING
But with "configure mongo" container have the following issue:
exception: connect failed
MongoDB shell version v4.0.5
connecting to: mongodb://127.0.0.1:27017/testDb?gssapiServiceName=mongodb
2022-04-17T10:16:12.300 0000 E QUERY [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
connect@src/mongo/shell/mongo.js:328:13
Docker logs:
docker-compose logs -f -t
mongodb | 2022-04-17T10:05:30.226492200Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] MongoDB starting : pid=1 port=27017 dbpath=/data/db 64-bit host=4edb2cf1520c
mongodb | 2022-04-17T10:05:30.226528800Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] db version v3.6.23
mongodb | 2022-04-17T10:05:30.226533600Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] git version: d352e6a4764659e0d0350ce77279de3c1f243e5c
mongodb | 2022-04-17T10:05:30.226536000Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2g 1 Mar 2016
mongodb | 2022-04-17T10:05:30.226538400Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] allocator: tcmalloc
mongodb | 2022-04-17T10:05:30.226540600Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] modules: none
mongodb | 2022-04-17T10:05:30.226542700Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] build environment:
mongodb | 2022-04-17T10:05:30.226544800Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] distmod: ubuntu1604
mongodb | 2022-04-17T10:05:30.226546900Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] distarch: x86_64
mongodb | 2022-04-17T10:05:30.226549000Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] target_arch: x86_64
mongodb | 2022-04-17T10:05:30.226551300Z 2022-04-17T10:05:30.226 0000 I CONTROL [initandlisten] options: { net: { bindIpAll: true } }
mongodb | 2022-04-17T10:05:30.226835700Z 2022-04-17T10:05:30.226 0000 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
mongodb | 2022-04-17T10:05:30.226845600Z 2022-04-17T10:05:30.226 0000 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=3398M,cache_overflow=(file_max=0M),session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),compatibility=(release="3.0",require_max="3.0"),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),statistics_log=(wait=0),verbose=(recovery_progress),
mongodb | 2022-04-17T10:05:30.890237100Z 2022-04-17T10:05:30.889 0000 I STORAGE [initandlisten] WiredTiger message [1650189930:889935][1:0x7fcfbc1eea40], txn-recover: Main recovery loop: starting at 10/5760
mongodb | 2022-04-17T10:05:30.944878200Z 2022-04-17T10:05:30.944 0000 I STORAGE [initandlisten] WiredTiger message [1650189930:944601][1:0x7fcfbc1eea40], txn-recover: Recovering log 10 through 11
mongodb | 2022-04-17T10:05:30.984505600Z 2022-04-17T10:05:30.984 0000 I STORAGE [initandlisten] WiredTiger message [1650189930:984131][1:0x7fcfbc1eea40], txn-recover: Recovering log 11 through 11
mongodb | 2022-04-17T10:05:31.016351600Z 2022-04-17T10:05:31.016 0000 I STORAGE [initandlisten] WiredTiger message [1650189931:16109][1:0x7fcfbc1eea40], txn-recover: Set global recovery timestamp: 0
mongodb | 2022-04-17T10:05:31.020908600Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten]
mongodb | 2022-04-17T10:05:31.020935800Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
mongodb | 2022-04-17T10:05:31.020940700Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
mongodb | 2022-04-17T10:05:31.020944900Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten]
mongodb | 2022-04-17T10:05:31.020948500Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten]
mongodb | 2022-04-17T10:05:31.020963500Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
mongodb | 2022-04-17T10:05:31.020967200Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten] ** We suggest setting it to 'never'
mongodb | 2022-04-17T10:05:31.021026300Z 2022-04-17T10:05:31.020 0000 I CONTROL [initandlisten]
mongodb | 2022-04-17T10:05:31.026044000Z 2022-04-17T10:05:31.025 0000 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
mongodb | 2022-04-17T10:05:31.026721000Z 2022-04-17T10:05:31.026 0000 I NETWORK [initandlisten] listening via socket bound to 0.0.0.0
mongodb | 2022-04-17T10:05:31.026742300Z 2022-04-17T10:05:31.026 0000 I NETWORK [initandlisten] listening via socket bound to /tmp/mongodb-27017.sock
mongodb | 2022-04-17T10:05:31.026748400Z 2022-04-17T10:05:31.026 0000 I NETWORK [initandlisten] waiting for connections on port 27017
configure-mongodb | 2022-04-17T10:05:42.001049300Z MongoDB shell version v4.0.5
configure-mongodb | 2022-04-17T10:05:42.041142600Z connecting to: mongodb://127.0.0.1:27017/testDb?gssapiServiceName=mongodb
configure-mongodb | 2022-04-17T10:05:42.062474900Z 2022-04-17T10:05:42.062 0000 E QUERY [js] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed: SocketException: Error connecting to 127.0.0.1:27017 :: caused by :: Connection refused :
configure-mongodb | 2022-04-17T10:05:42.062521800Z connect@src/mongo/shell/mongo.js:328:13
configure-mongodb | 2022-04-17T10:05:42.062530800Z @(connect):1:6
configure-mongodb | 2022-04-17T10:05:42.064886200Z exception: connect failed
CodePudding user response:
You need to use the service name (or container name/id) as hostname. The error says:
Error: couldn't connect to server 127.0.0.1:27017
So you are trying to connect to an instance running inside the configure-mongodb
container, while you actually want to connect to the mongodb
container.
Use the below instead:
mongodb://mongodb:27017/testDb?gssapiServiceName=mongodb