-
Notifications
You must be signed in to change notification settings - Fork 2
SuphremeChicken edited this page Nov 12, 2019
·
8 revisions
mongo -u root —host 106.10.58.138:2020 -p
- 데이터 베이스 목록
- 개발용
- LJH_dev, LJH_test
- MJM_dev, MJM_test
- SCHH_dev, SCHH_test
- 배포용
- CRAFOLIO
- 개발용
- 도커 설치
curl -fsSL https://get.docker.com/ | sudo sh
- 도커 컴포즈 설치
sudo curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 실행 권한 부여
sudo chmod +x /usr/local/bin/docker-compose
docker pull mongo:latest
- docker-compose.yml
version: '3'
services:
database:
image: 'mongo'
container_name: 'mongo-container'
environment:
- MONGO_INITDB_DATABASE=mongo1 ## init 용 js가 활용할 database 이름 (init.js안에서 createdatabase가 있을 수 없기 때문)
- MONGO_INITDB_ROOT_USERNAME=root ## root 계정
- MONGO_INITDB_ROOT_PASSWORD=password ## root 패스워드
volumes:
- ./init-mongo.js:/docker-entry-initdb.d/init-mongo.js:ro ## (밖)->(컨테이너 안) ./init.js -> /docker .... :ro 읽기 전용으로 복사
- ./mongo-volume:/data/db ## 컨테이너 외부의 디렉터리(./mongo-volume) mongodb와 연동
ports:
- '2020-2022:27017-27019' ## 외부 포트를 컨테이너 내부 포트(27017-27019)와 연결
command:
- --auth ## !!!! 중요 옵션, 몽고 디비는 기본 옵션이 사용자 검증 없이 접속이 되므로 이 옵션을 꼭 할 것
- init.js
// use admin 여기서 안됨
// - > MONGO_INITDB_DATABASE 값을 admin으로 주어야 함 (docker-compose.yml) ( 어쨋건 안되서.. ㅠㅠ 그냥 쉘로 접속해서 계정 만듬 )
db.createUser([{
user: "JMJ",
pwd: "password",
roles: ["root"]
}])
- 실행
docker-compose up -d
// background로 실행
- 로그인
docker exec -it <container-name> bash