将docker-compose.yml文件中的配置:
mongodb:
image: mongo:3.7
restart: always
environment:
- MONGO_DATA_DIR=/data/db
- MONGO_LOG_DIR=/data/logs
volumes:
- ./db/mongodb/data:/data/db
- ./db/mongodb/example_db:/data/example_db
- ./db/mongodb/logs:/data/logs
- ./db/mongodb/etc/mongod.conf:/etc/mongod.conf
ports:
- 27017:27017
networks:
- code-network
改成:
mongodb:
image: mongo:latest
restart: always
environment:
- MONGO_DATA_DIR=/data/db
- MONGO_LOG_DIR=/data/logs
volumes:
- ./db/mongodb/data:/data/db
- ./db/mongodb/example_db:/data/example_db
- ./db/mongodb/logs:/data/logs
command: ["mongod", "--bind_ip", "php"]
ports:
- 27017:27017
networks:
- code-network
然后重启启动
docker-compose stop
docker-compose up -d
然后你可以进入到mongodb容器中,检查一下
ps -xa | grep mongod
如果现实 1 ? Ssl 0:01 mongod --bind_ip php 就没有问题了。
绑定ip后,外部访问将会报错:
[root@iZ942k2d5ezZ mongo]# mongo 144.202.52.147
MongoDB shell version v3.6.1
connecting to: mongodb://144.202.52.147:27017/test
2018-06-25T16:49:39.178+0800 W NETWORK [thread1] Failed to connect to 144.202.52.147:27017, in(checking socket for error after poll), reason: Connection refused
2018-06-25T16:49:39.179+0800 E QUERY [thread1] Error: couldn't connect to server 144.202.52.147:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:251:13
@(connect):1:6
exception: connect failed
[root@iZ942k2d5ezZ mongo]#
之前的那种配置,我测试是可以直接远程访问的,更改会就无法连接了