(Docker) Mysql(PostgreSQL, mariaDB 등)을 도커로 실행시키기

2022. 3. 24. 23:18컴퓨터 공학/DB

반응형

mysql과 postgresql은 각각 3306, 5432 포트를 기본으로 사용하기 때문에

겹칠일이 없지만, mysql과 mariaDB같은 경우 둘다 3306 포트로 실행되는데다, 같은 로컬환경에 출돌이 일어나기 쉽상이다.

 

그래서 이에 대한 해결책으로 도커에서 DB를 띄우는 법에 대해서 얘기하려 한다.

 

🏴󠁩󠁤󠁪󠁷󠁿 MySQL을 Docker에서


당연히 이 과정을 수행하기 위해서는 Docker가 기본적으로 설치되어 있어야겠다.

그리고 당연히 기본적인 docker 명령어들은 숙지가 되어 있어야 한다.

 

// 로그인 되어 있지 않다면 로그인
docker login

// 실행되고 있는 것은 무엇인지 확인
docker ps

// 사실 docker 앱 보면 바로 알 수 있긴하다

 

먼저 로컬환경에 mysql 도커 이미지를 받아오자.

 

몇 버전을 받아올지, 운영체제는 arm64 인지 amd64인지 이런 것을 확인해야한다.

 

이는 아래에서 주소로 들어가서

 

Mysql - Official Image | Docker Hub

Quick reference Supported tags and respective Dockerfile links 8.0.28-oracle, 8.0-oracle, 8-oracle, oracle 8.0.28, 8.0, 8, latest, 8.0.28-debian, 8.0-debian, 8-debian, debian 5.7.37-oracle, 5.7-oracle, 5-oracle 5.7.37, 5.7, 5, 5.7.37-debian, 5.7-debian, 5-

hub.docker.com

 

Tags로 들어가면 아래와 같은 목록들을 만날 수 있다.

 

그리고 자신이 필요한 버전을 오른쪽 명령어를 통해서 로컬 환경에 내려받으면 된다.

 

 

로컬 환경에 이미지를 가져왔다면 다시 Description으로 돌아가자(공식문서가 최고다)

 

Description으로 돌아와 커서를 조금만 내리면 아래 이미지를 볼 수 있다.

 

그렇다 어떻게 실행하는 건지 나와있는 것이다.

 

//--name 뒤에는 이름, password뒤에는 비밀번호, tag에는 이미지의 tag를 입력해주면 된다.
docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag

 

그러면 mysql 설정이 완료 되었다.

 

docker ps를 입력하면 실행은 되고 있는데 어떻게 접속하는 건지 모르겠다.

 

그럼 다시 공식문서로 돌아와서 커서를 조금 더 내리면 다음과 같은 이미지를 볼 수 있다.

 

 

이렇게 하면 mysql이 설치된 컨테이너의 bash가 실행된다.

 

그리고 늘 하던 것 처럼 mysql -u root -p 를 입력해서 사용하면 된다.

 

끝.

반응형