[비트캠프] 96일차(20주차4일) - Docker(pull, 볼륨 공유, 이미지 생성과 배포)
docker pull mysql
hub.docker.com 에서 mysql 검색한 후 선택해서 Tags 클릭하면 어떤 버전 pull 할수 있는지 코드 나와있다.
Host 볼륨 공유하기
볼륨 : 저장공간(directory)
Host 에 Container1(/var/ok), Container2(/var/no), ... 가 있다. 여기서 /dir1 디렉토리 공유한다.
wordpressdb_hostvolume 컨테이너에 /var/lib/mysql (MySQL 서버의 DB 파일을 두는 폴더)이 있다.
여기서 host 폴더를 가리킨다.
Host (VirtualBox: Ubuntu:22.04) 의 /home/wordpress_db
alicek106/volume_test 도커 이미지를 이용해 컨테이너를 생성한다.
«container»volume_dummy 라는 컨테이너를 만든다. 여기에 /home/testdir_2 에 test 파일이 있다.
«container»volume_override 라는 컨테이너를 만든다. 여기에 /home/testdir_2 에 test 파일이 삭제된다. 볼륨 연결하면 원래 있던 것들 대신 Host의 /home/wordpress_db/ 디렉토리를 가리킨다.
alicek106/volume_test 이미지로 «container»volume_override 생성한다. 여기에 /home/testdir_2 가 Host 의 /home/wordpress_db 로 연결된다.
ubuntu:14.04 이미지로 «container»volumes_from_container 생성한다. 이는 다른 컨테이너의 볼륨 공유 설정 가져오기(--volumes-from 컨테이너명) 으로 생성하였다. /home/testdir_2 디렉토리 생성된다. 여기서 Host 의 /home/wordpress_db 로 연결된다.
Host 가 volume 생성하는데 이름은 myvolume 이다.
«container»myvolume_1 과 «container»myvolume_2 컨테이너를 만든다. 여기서 myvolume 을 공유한다.
Network
Host 의 eth0 와 Container 의 eth0 인 veth 와 연결한다.
Docker 이미지 생성과 배포
«이미지»ubuntu:14.04 로 «컨테이너»commit_test 생성한다. 여기에 /first 추가한다.
이미지 추출한다 → «이미지»commit_test:first. 이를 이용해 «컨테이너»commit_test2 생성한다. 여기에 /second 추가한다.
이미지 추출한다 → «이미지»commit_test:second.
조언
*2~3명이 CRUD 한 세트 해보고 자신감이 생기면 혼자 해보라. 진행하면서 Bootstrap 등 CSS 도 같이 적용하라.
과제
/