Run the MySQL with Docker
· Version : MySQL 5.7, Docker
MySQL 5.7 버전을 Docker를 활용해서 빠르게 설치하여 활용하는 방법에 대해서 살펴본다. 이번 포스트에서 다루는 환경 구성은 Windows Host 기반에 Docker(windows버전)를 설치하고 Container로 MySQL5.7 를 실행한다. 이 포스트는 MySQL 설치를 중점으로 다루고 있으며 Docker에 대해서는 다루지 않는다.
Docker 설치가 완료 되었으면 Powershell 명령 도구를 실행 한다. 그리고 아래 명령어를 실행 한다. 이 명령은 최신 버전의 mySQL 버전의 컨테이너 이미지를 가져온다.
docker pull mysql |
아래 명령어를 실행하면 위에서 다운로드 받은 이미지를 확인 할 수 있다.
docker images |
아래 명령을 실행 하여 다운로드 받은 이미지를 container로 실행 한다.
docker run --name mysql -e MYSQL_ROOT_PASSWORD=mypass -d -p 3306:3306 mysql |
· -e MYSQL_ROOT_PASSWORD=mypass : root 비밀번호를 생성한다. 이 단계를 필수 이므로 요구 조건을 만족하는 비밀번호를 입력 할 수 있도록 한다.
· -p 3306:3306 : 호스트의 3306 포트를 컨테이너의 3306 포트로 매핑한다.
· --name mysql : 컨테이너 이름을 지정한다. 사용자가 변경할 수 있다. 단, 이미 다른 컨테이너에서 이름을 사용하고 있다면 중복으로 사용이 불가능 하다.
· -d mysql : 컨테이너가 실행할 이미지 이름
아래 명령을 실행하여 SQL Server container가 정상적으로 실행되었는지 확인할 수 있다.
docker ps |
MySQL 컨테이너 실행이 정상적으로 완료 되었으면, Container에 접속한다.
docker exec -it mysql /bin/bash` |
Container 콘솔에 접근되었으면 MySQL에 접속을 하여 정상적으로 실행되고 있는지 확인한다.
mysql -u root -p password |
Container외부에서Container내부의 MySQL로 접속하기 위해서는 host에서 컨테이너로 매핑하고 있는 IP로 접속해야 한다. 아래 명령어로 container 정보를 확인하여 현재 사용되는 포트를 확인한다. Host의 3306 포트가Container의 3306으로 매핑 되는것을 확인 할 수 있다.
Docker ps |
필자의 경우 MySQL Workbench를 사용하여 외부에서Container 의 MySQL로 접속 하였다. 커맨드 명령어로도 접속이 가능하다.
mysql –h 127.0.0.1 -P 3306 –u root -p password |
아직은 Docker기반의 MySQL이 실제 운영환경을 대체할 수 있을지는 잘 모르겠으나, 개발 환경이나 다양한 테스트 환경을 구성하기에는 빠르고 쉽게 설치 할 수 있어 다양한 용도로 활용 할 수 있을듯 하다.
[참고자료]
https://hub.docker.com/r/mysql/mysql-server/
2018-04-11 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com
MySQL, MySQL with docker, MySQL 도커, Docker, pull mysql, docker with mysql, mySQL 설치
'MySQL, MariaDB' 카테고리의 다른 글
MySQL/MariaDB Select 모니터링 (0) | 2019.03.24 |
---|---|
MySQL/MariaDB Replication 모니터링 (0) | 2019.03.24 |
MySQL/MariaDB Handler 모니터링 (0) | 2019.03.24 |
MySQL/MariaDB Connection 모니터링 (0) | 2019.03.24 |
MySQL/MariaDB QPS(Query per second) 모니터링 (0) | 2019.03.24 |