함께해요~
Persistence 본문
Data Volume 이란
도커 컨테이너 안의 디렉토리를 디스크에 persistence data 로 남기기 위한 메커니즘이며, 호스트와 컨테이너 사이의 디렉토리 공유 및 재 사용 기능 제공
docker container run [options] -v 호스트_디렉토리:컨테이너_디렉토리 레파지토리명[:태그] [명령]
docker container run -v ${PWD}:/workspace gihyodocker/imagemagick:latest
data volume 에 mysql 데이터 저장히기
- data volume 을 위한 이미지 생성
Dockerfile 생성
FROM busybox
VOLUME /var/lib/mysql
CMD ["bin/true"]
보충 설명 : busybox 는 최소한의 운영 체제 기능만 제공하는 경량 운영체제
docker image build -t example/mysql-data:latest .
docker container run -d --name mysql-data example/mysql-data:latest
2. mysql 컨테이너
--volumes-from mysql-data
설명 : 볼룸 컨테이너 mysql-data 를 mysql 컨테니어에 마운트
docker container run -d --rm --name mysql \
-e "MYSQL_ALLOW_EMPTY_PASSWORD=yes" \
-e "MYSQL_DATABASE=데이타베이스명" \
-e "MYSQL_USER=아이디" \
-e "MYSQL_PASSWORD=패스워드" \
--volumes-from mysql-data \
mysql:5.7
3. mysql 컨테이너 로그인
docker container exec -it mysql -u root -p volume_test
mysql 접속
mysql> create table ....
insert ...
4. 컨테이너 정지 & 삭제
docker container stop mysql
5. 새로운 컨테이너 실행
2번에서 진행 한 mysql 컨테이너 실행
6. 데이타 존재 여부 확인
mysql container 에 접속하여 select 명령어 실행 시 데이타 존재여부 확인
'DOCKER' 카테고리의 다른 글
컨테이너 다루기 (1) | 2019.07.18 |
---|---|
도커 이미지 다루기 (0) | 2019.07.17 |