본문 바로가기
개발 도구

docker를 이용한 MySQL 설치

by Ahngyuho 2023. 8. 7.

이번 포스팅에서는 dokcer를 이용해서 MySQL을 설치해보고 Spring Boot 프로젝트와 연동하는 것을 다뤄보려고 합니다.

 

저는 windows os 환경에서 wsl을 이용해 docker를 사용중입니다.

 

https://agh-dev.tistory.com/19

 

Docker 설치를 위한 wsl 설치

이번 포스팅은 window 11 환경에서 wsl을 설치해보려고 합니다. 제 개발 환경 os는 windows인데 가끔 docker를 사용할 때가 있습니다. windows에서 docker를 사용하기 위해서는 wsl을 설치해야 합니다. wsl 이

agh-dev.tistory.com

 

MySQL Image pull

가장 먼저 해야하는 일은 Image를 가져오는 것입니다. docker에 관련된 개념에 대한 자세한 설명은 이번 포스팅에선 다루지 않겠습니다.

 

우선 cmd 창을 열고 다음 명령어를 입력해주세요.

docker pull mysql

위 명령어는 가장 최신버전의 MySQL Image를 받아옵니다.

간단하게 Image를 설치할 수 있습니다!

 

docker 실행 - docker desktop

현재 시점에서는 저 재생버튼을 누르게 되면

Run을 한번 눌러보시면

메시지 확인을 한번 해봅시다!

환경설정을 해달라고 하는 것 같아요.

 

현재 보이는 환경 변수들이 어떤 변수들인지 한번 알아보죠.

  • MYSQL_ROOT_PASSWORD                                                                                                                                         -  해당 변수로 root 계정의 비밀번호 설정
  • MYSQL_ALLOW_EMPTY_PASSWORD                                                                                                                          -  해당 변수는 선택적으로 설정 가능하고, yes로 설정하면 root 계정에 대한 액세스를 모두에게 열어두는 것으로 권장되지 않음
  • MYSQL_RANDOM_ROOT_PASSWORD                                                                                                                         -  해당 변수는 선택적으로 설정 가능하고, 초기 root 계정 비밀번호를 랜덤으로 설정. 생성된 암호는 stdout에 printed됨

 

오류 메시지에서는 3가지 중 한가지만 설정해도 된다고 했으니 저는 MYSQL_ROOT_PASSWORD를 설정해보겠습니다.

이번에는 Optional settings를 눌러봅시다.

보시는 바와 같이 환경 변수를 설정해서 실행할 수 있습니다.

 

잘 실행되는 것 같아 보이네요.

이제 실제로 MySQL 서버에 root 계정으로 접속해 보겠습니다.

바로 위의 그림에서 Name을 클릭해보시면 아래와 같은 창으로 이동할 수 있습니다.

그리고 Terminal로 이동하고 명령어를 입력해줍시다.

mysql -u root -p

그리고 설정한 password를 입력하시면 성공적으로 MySQL 서버에 접속할 수 있을겁니다.

 

docker 실행 - cli

docker run --name blog-test -e MYSQL_ROOT_PASSWORD=password -d -p 3306:3306 mysql:latest

cmd 창에서 위 명령어 한줄이면 위와 같은 설정값으로 MySQL 서버를 실행할 수 있습니다.

 

그리고 서버 접속은 아래 명령어를 입력하시면 됩니다.

docker exec -it blog-test /bin/bash

cli를 쓰는 경우에도 root 계정을 통한 MySQL 서버 접속 명령어는 동일합니다.

 

이제 모든 과정이 완료되었습니다.

 

정리

이번 포스팅에서는 docker를 이용해 MySQL을 설치하는 과정에 대해 다루었습니다.

Image를 받아오는 방법, 받아온 Image를 docker-desktop 혹은 cli를 통해 컨테이너화 해서 MySQL 실행하는 방법을 다루었습니다.

 

이후 포스팅에서는 docker를 이용해서 실제 애플리케이션과 연동하는 방법도 다루어 보겠습니다!