반응형
Ubuntu 에서 Docker 로 띄워놓은 MySQL 컨테이너의 데이터를 Docker Volume 을 만들어 관리하려 한다.
docker inspect mysql_컨테이너_ID
로 해당 컨테이너에 마운트 되어 있는 볼륨을 찾는다.
"Mounts" 부분에서 찾을 수 있다.
docker volume create 새로운_volume_이름
으로 새로운 볼륨을 생성해주고
docker run --rm -v 백업할_volume_이름:/from -v 새로_만든_volume_이름:/to alpine ash -c "cd /from && cp -av . /to"
• 백업할_볼륨_이름을 /from 경로에 마운트합니다.
• 새로_만든_볼륨_이름을 /to 경로에 마운트합니다.
• alpine 컨테이너를 시작하고, /from에서 /to로 모든 데이터를 복사합니다 (cp -av . /to).
명령어를 실행시켜주면 복사가 시작된다.
sudo ls /var/lib/docker/volumes/새로_생성한_volume_이름/_data
으로 복사된 데이터를 확인할 수 있고
Docker-Compose 를 사용한다면 mysql 부분에
volumes:
- ${MYSQL_DATA_PATH}:/var/lib/mysql
생성한 볼륨 위치를 지정해주고
컨테이너로 사용하고 있다면
-v 옵션으로 볼륨 위치를 지정해주고 컨테이너를 실행시켜주면 된다.
다시 docker inspect 컨테이너_ID 를 해주어 새로 생성한 볼륨이 정상적으로 마운트 되어 있는지 확인한다.
반응형
'개발 ━━━━━ > Dev' 카테고리의 다른 글
[AWS S3] S3 데이터 계정간 이동 및 복원하기 (0) | 2024.06.08 |
---|---|
[Nginx] Blue / Green 배포 전략으로 Spring 프로젝트 EC2 에 무중단 배포하기 (0) | 2024.02.20 |
[Docker] MySQL 컨테이너를 이미지화 하여 Docker Hub 에 push 하기 (0) | 2023.12.04 |
Github Actions 를 이용하여 AWS EC2 에 SpringBoot 애플리케이션 CI/CD 구축 (0) | 2023.09.27 |
Github Actions (0) | 2023.09.25 |