# docker-compose.yml
version: "3.5"
services:
mongo:
image: mongo:4.1.6
container_name: mongo
hostname: mongo
ports:
- "27017:27017"
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin
volumes:
- ./data:/data/db
networks:
- mongo-network
mongo-express:
image: mongo-express
container_name: mongo-express
hostname: mongo-express
ports:
- 8081:8081
environment:
ME_CONFIG_MONGODB_ADMINUSERNAME: admin
ME_CONFIG_MONGODB_ADMINPASSWORD: admin
ME_CONFIG_SITE_BASEURL: /mon/
networks:
- mongo-network
networks:
mongo-network:
name: mongo-network
driver: bridge
单个库设置权限
mongo shell
docker run -it --rm --network mongo-network mongo:4.1.6 \
mongo --host mongo \
-u root \
-p root
# 切换到要使用的数据库
use mongo-demo
# 创建一个用户
db.createUser(
{
user:'test',
pwd:'test',
roles:[{role:'dbOwner',db:'mongo-demo'}]
}
)
此时可以远程连接使用了