오늘 슬픈 이야기가 있습니다. 토요일 이후 데이터베이스 변경 사항이 모두 손실되었습니다.도커 데이터 안전
우리는 mongodb (3.4.1)을 사용하며,이 특별한 경우 매핑 된 볼륨을 가진 공식 도커 컨테이너 안에서 실행 중입니다. 컨테이너는 고정 표시기-작성하여 만든
, docker-compose.yml
은 다음과 같습니다
version: "2"
services:
database:
image: mongo:3.4.1
restart: always
container_name: cvs-db
volumes:
- ~/data/db:/data/db
ports:
- "27017:27017"
~/data/db
그냥 오래 전에 만든 일반 폴더입니다.
컨테이너를 다시 시작한 후 (데이터가 docker-compose up -d
) 이틀 전에 데이터가 반환되었습니다. 삭제조차도 사라졌습니다.
어제 모든 컬렉션을 정리하고 실제 데이터로 채우기 시작했으며 이제는 최근에 제거한 모든 테스트 데이터가 포함되었습니다.
내 질문은 : 1) mongodb 데이터를 어떻게 그러한 재해로부터 보호 할 수 있습니까? 2) 누군가 이러한 결과를 초래할 수있는 정확한 조건을 말할 수 있습니까? 3) 데이터를 어떻게 복원합니까?
편집 : 일부 연구를 마친 후에는 도커 작성 오류라고 생각합니다. 하지만 질문은 여전히 유효합니다.
"매핑 된 볼륨"이란 용어에 대해 자세히 설명해 주시겠습니까? 이 볼륨을 얼마나 정확하게 만들거나 첨부 했습니까? Docker에서 볼륨을 수행하는 방법에는 여러 가지가 있으며 각각 다른 동작/제한/위험이 있습니다. –
docker-compose를 사용했습니다 : 볼륨 : ~/data/db :/data/db –
실제로 우리에게 아무 것도 알려주지 않습니다. 질문을 편집하고 볼륨이 매핑되거나 생성 된 방법에 대해 자세히 설명하십시오. –