티스토리 뷰
728x90
반응형
docker-compose down 명령어는 실행중인 모든 컨테이너를 중지하고 삭제한다. 이러한 과정에서 데이터 손실이 발생할 수 있는데, 이를 방지하는 두 가지 방법을 소개하려고 한다.
1. docker-compose stop 이용
- docker-compose stop 명령어는 컨테이너를 일시정지하는 것과 같다.
- 이 명령어는 컨테이너를 삭제하지 않고 중지 상태로 유지하므로 언제든지 다시 시작할 수 있다.
- 또한 서비스를 정상적으로 종료하고 데이터를 저장하는 과정을 거치기에 데이터 손실이 발생하지 않는다.
2. docker-compose.yml 파일에 볼륨 지정 설정
- docker-compose.yml 파일에서 MySQL 데이터베이스나 기타 데이터를 저장할 서비스에 볼륨을 설정하면 데이터 손실을 막을 수 있다.
- 아래와 같이 yml 파일을 수정하여 볼륨을 설정할 수 있다.
services: db: image: mysql:latest environment: MYSQL_ROOT_PASSWORD: example volumes: - db_data:/var/lib/mysql # 볼륨 설정 volumes: db_data: # 외부에 저장될 볼륨 정의, 별도의 경로 설정 필요 없음
- 또는, 호스트 경로를 직접 지정하여 데이터 저장을 할 수도 있다.
services: db: image: mysql:latest environment: MYSQL_ROOT_PASSWORD: example volumes: - /my/local/path/db_data:/var/lib/mysql # 호스트 경로를 직접 지정
단기적으로 데이터 보호가 필요하다면 docker-compose stop이 유리하고, 장기적으로 데이터를 안전하게 보존하려면 볼륨 설정이 더 효율적이다.
728x90
반응형
'Study > Docker' 카테고리의 다른 글
[Docker] 실행 중인 컨테이너에 패키지 설치하기 (0) | 2024.10.25 |
---|---|
[Docker] 실행 중인 컨테이너 쉘(shell / 콘솔)에 접근하기 (0) | 2024.10.25 |
[Docker] Docker Compose 서비스 종료 및 리소스 삭제(down) (1) | 2024.10.25 |
Docker 실행하면서 마주한 에러 모음 (2) | 2024.10.25 |
[Docker] Docker Compose로 Django 프로젝트 환경 구성 (0) | 2024.10.25 |
댓글