[Docker] 도커에서 MySQL 영구적인 볼륨 패스워드 컨테이너 설치

 MySQL 설치 

 

도커에서 컨테이너를 만들기 위해서는 기본적으로 MYSQL_ROOT_PASSWORD 라는 비밀번호 옵션을 주어야 합니다. 뿐만아니라 도커에서 특정 컨테이너를 만들었다가 삭제하면 데이터를 유지할 수 없게되는데 그럼 데이터베이스 역할을 하기 힘들게됩니다. 때문에 사용자 운영체제에 마운트 하거나 볼륨을 고정적으로 만들고 관리해줘야 합니다.

 

 

 

도커 pull 명령어로 새로운 MySQL 이미지를 받아옵니다.

docker pull mysql
view raw blog1.bash hosted with ❤ by GitHub

 

 

 

 도커 run 명령어로 새로운 컨테이너를 만듭니다. --name 옵션으로 이름을 지정하고 -e 옵션을 주어서 비밀번호를 설정합니다.

docker run --name mysql -e MYSQL_ROOT_PASSWORD=1234 -d -p 3306:3306 mysql:latest
view raw blog2.bash hosted with ❤ by GitHub

 

 

 

 만약 볼륨을 설정하고 싶다면 다음과 같이 -v 옵션을 주고 컨테이너를 생성합니다.

docker run --name mysql -e MYSQL_ROOT_PASSWORD=1234 -v mysql_dir:/var/lib/mysql -d -p 3306:3306 mysql:latest
view raw blog5.bash hosted with ❤ by GitHub

 

 

 

 이제 도커의 ps 명령을 통해 mysql 컨테이너가 잘 만들어졌는지 확인해봅니다. 그리고 exec 명령으로 만들어진 도커 컨테이너에 접속합니다.

docker exec -it mysql bash
view raw blog3.bash hosted with ❤ by GitHub

도커 접속하기


 

 

 

컨테이너에 접속한 뒤 생성시 입력했던 MySQL 패스워드를 입력해 로그인을 합니다. (1234)

mysql -uroot -p
view raw blog4.bash hosted with ❤ by GitHub

MySQL 접속


 

 

 

 도커 볼륨 관리 

 

 

 도커 볼륨을 확인합니다.

docker volume list
view raw blog6.bash hosted with ❤ by GitHub

 

 

 

 만약 컨테이너를 삭제한다면 -v 옵션을 줘서 고정적으로 생성된 볼륨을 같이 삭제 할 수 있습니다.

docker rm -v mysql
view raw blog7.bash hosted with ❤ by GitHub

 

 

 

컨테이너 삭제시 볼륨을 삭제하지 못했다면 직접 list 명령에서 검색된 볼륨을 삭제할 수 있습니다.

docker volume rm 6765f342d98d3f274a0d7c3b137e07e48e9c153764e372707b6d987018498e6d
view raw blog9.bash hosted with ❤ by GitHub

 

 

 

만약 컨테이너와 연결되지 않는 볼륨을 모두 삭제하고 싶다면 volume prune 명령어를 통해서 삭제할 수 있습니다.

docker volume prune
view raw blog8.bash hosted with ❤ by GitHub

 

Designed by JB FACTORY