728x90
728x90
MongoDB 데이터 JSON으로 내보내기 (mongoexport)
먼저 실행 중인 MongoDB 컨테이너 내부에서 데이터를 내보내야 합니다.
sudo docker exec <컨테이너_이름> mongoexport \
--db=<데이터베이스_이름> \
--collection="<컬렉션_이름>" \
--out=/data/<내보낼_파일명>.json \
--jsonArray
- docker exec: 실행 중인 컨테이너 내부에서 명령어 실행
- <컨테이너_이름>: MongoDB가 실행 중인 Docker 컨테이너 이름
- mongoexport: MongoDB 데이터를 JSON 또는 CSV로 내보내는 도구
- --db=<데이터베이스_이름>: 내보낼 데이터베이스 이름
- --collection="<컬렉션_이름>": 내보낼 컬렉션 이름
- --out=/data/<내보낼_파일명>.json: 컨테이너 내부에 저장할 파일 경로
- --jsonArray:데이터를 JSON 배열 형식으로 저장
예시)
sudo docker exec mongodb_container mongoexport \
--db=my_database \
--collection="my_collection" \
--out=/data/backup.json \
--jsonArray
컨테이너에서 로컬로 파일 복사 (docker cp)
sudo docker cp <컨테이너_이름>:/data/<내보낸_파일명>.json ./<로컬_파일명>.json
- docker cp: 컨테이너 내부의 파일을 로컬로 복사
- <컨테이너_이름>:/data/<내보낸_파일명>.json: 컨테이너 내부의 파일 경로
- ./<로컬_파일명>.json: 현재 디렉터리(`./`)로 복사할 파일
예시)
sudo docker cp mongodb_container:/data/backup.json ./backup.json
728x90
300x250
'Docker' 카테고리의 다른 글
[Docker] 호스트 환경 변수 vs 컨테이너 환경 변수 (0) | 2025.03.23 |
---|---|
[Docker] 도커가 컨테이너를 실행하는 원리 (0) | 2025.03.23 |