반응형
깃허브 주소는
https://github.com/paullee714/docker-db
Docker - MongoDB
- .env file을 사용해서 컨테이너에 정보를 주도록 해보겠습니당
docker-compose.yml 작성
version: '3'
services:
mongodb:
image: mongo
ports:
- "${MONGO_PORT}:27017"
volumes:
- /Users/wool/Dev/mongodb:/data/db
container_name: "docker-mongodb"
env_file:
- .env
.env file 작성
## Mongodb
MONGO_HOST=localhost
MONGO_PORT=27017
MONGO_INITDB_ROOT_USERNAME=root
MONGO_INITDB_ROOT_PASSWORD=qwerqwer123
MONGO_INITDB_DATABASE=mongo-test
docker-compose up
$ docker-compose up -d
Add user (db.createUser)
.env 파일에 적용했던 username, password를 사용해서 admin에 접근 한 후, 사용자를 만들어주도록 하겠습니다.
mongodb shell 접근
$ docker exec -it docker-mongodb bash
root@33045c9dba7a:$ mongo
MongoDB shell version v4.2.7
connecting to: mongodb://127.0.0.1:27017/?compressors=disabled&gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("96f78619-6b89-48f5-a860-2c90e554607c") }
MongoDB server version: 4.2.7
db.auth()로 admin 인증하기
> use admin
> db.auth('root','qwerqwer123') # .env에 썼었던 계정으로 접속 한 후에 진행
1
위처럼 1이 나오면 인증이 완료 된 것입니다
-
tips
바로 인증하고 접속하기
> mongo -u username -p password —authenticationDatabase admin
바로 인증하고 admin 데이터베이스로 접속하기
> mongo admin -u username -p password —authenticationDatabase admin
데이터베이스에 접근
> use test_db
'use' 뒤에 db이름을 적어주면 해당 db로 접근이 됩니다
사용자 만들기
> db.createUser({
user:'wool',
pwd:'password',
roles:['dbOwner']
})
사용자의 roles는 공식 doc를 참고했다
'Old Branch' 카테고리의 다른 글
Flask - DB (Mysql) 연동과 CRUD (0) | 2020.06.22 |
---|---|
Flask ORM Model 생성하기 (SqlAlchemy) (0) | 2020.06.19 |
Docker 를 사용해 Database 간단하게 구축하기 (MYSQL) (0) | 2020.06.18 |
ELK 사용해서 flask 로그 분석하기 (1) | 2020.06.15 |
python logging 파이썬 로깅 (feat. Flask) (0) | 2020.06.01 |