docker

[docker] docker mariadb 설치

밍글링글링 2022. 3. 26. 22:59
728x90

Docker hub에서 Mariadb 이미지를 다운로드 받자

공식 홈페이지에서 도커를 다운로드하여서 설치하셨다면, 이제는 본격적으로 Mariadb를 설치하기 위해 Mariadb 이미지를 다운받아 보겠습니다. 사용자 환경에 따라 화면이 조금은 다를 수 있지만 도커는 CLI를 기반으로 동작하기 때문에 명령어를 입력할 수 있는 창을 이용해 진행과정을 살펴보도록 하겠습니다.

sudo yum -y update

sudo yum install yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce

sudo systemctl start docker --도커 시작

sudo systemctl enable docker --도커 자동 실행 설정

docker pull mariadb

docker run --name mariadb -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mariadb ma

docker exec -it mariadb /bin /bash

mysql -u root -p

비밀번호 입력

create user 'mingty'@'%' identified by 'mingty1234';

grant all privileges on mingty.* to 'mingty'@'%';

flush privileges;

 

 

아래는 참고!

 

Docker - Mariadb 이미지 다운로드 받기

docker pull mariadb

 명령어를 입력해서 실행하시면 Docker hub에 있는 이미지를 사용자 컴퓨터에 다운받을 수 있습니다.

docker pull mariadb

 

 

 

Mariadb를 설치하자

Mariadb 이미지를 다운로드하였다면, 다운로드 한 이미지를 기준을 컨테이너를 만들 차례입니다. 도커에서 컨테이너를 만든다는 이야기는 프로그램을 설치한다는 것과 같은 의미입니다. 정리한다면 프로그램(이미지)을 다운받았으니, 이제 설치(컨테이너 만들기) 할 차례라는 이야기예요.

 

Docker - Mariadb 컨테이너를 만들고 실행하기

docker run \
    --name mariadb \
    -d \
    -p 3306:3306 \
    --restart=always \
    -e MYSQL_ROOT_PASSWORD=root \
    mariadb

or

docker run --name mariadb -d -p 3306:3306 --restart=always -e MYSQL_ROOT_PASSWORD=root mariadb

 입력하는 명령문의 내용을 간략하게 설명하면 아래와 같습니다.

 

--name: 만들어서 사용할 컨테이너의 이름을 정의

-d: 컨테이너를 백그라운드에서 실행

-p: 호스트와 컨테이너 간의 포트를 연결 (host-port:container-port) // 호스트에서 3306 포트 연결 시 컨테이너 3306 포트로 포워딩

--restart=always: 도커가 실행되는 경우 항상 컨테이너를 실행

-e: 기타 환경설정(Enviorment)

  MYSQL_ROOT_PASSWORD=root // mariadb의 root 사용자 초기 비밀번호를 설정

mariadb: 컨테이너를 만들 때 사용할 이미지 이름

docker run with mariadb

 두 가지의 명령어만으로 도커로 Mariadb 이미지를 다운로드하고, Mariadb를 설치(컨테이너 만들기)했습니다. 위에서 진행한 과정만으로 Mariadb 설치 과정이 모두 끝났습니다. 정말 어렵지 않습니다. Mariadb를 다운받아 설치하는 것보다 한 단계의 과정이 더 있지만 도커를 이용해서 Mariadb를 설치하면 설치뿐만 아니라 업데이트, 삭제까지 명령어 한 번이면 됩니다. 그것도 흔적이 남지 않고 깔끔하게 말이죠.

 

 

 

Mariadb에 database를 추가하고 user를 설정해보자.

도커를 이용해서 Mariadb를 설치하는 과정은 다 끝났지만 몇 가지 설정을 해볼 까 합니다. database를 만들고 user를 추가해 권한을 부여하는 부분까지 말이죠.

 

Docker - Mariadb 컨테이너 접속하기

docker exec -it mariadb /bin/bash

 만약 Mariadb 컨테이너를 만드실 때 컨테이너의 이름을 변경하셨다면 mariadb 대신 변경하신 컨테이너의 이름을 사용해주세요.

 

Mariadb - 루트 계정으로 데이터베이스 접속하기

mysql -u root -p

 위의 명령어를 입력하고 엔터를 하면 Mariadb 컨테이너를 만들 때 사용한 패스워드를 입력하시면 됩니다. 예시로 드린 명령어에서는 "root"를 root의 초기 비밀번호로 설정하였습니다.

 

Mariadb - 데이터 베이스 만들기

create database [db_name];

ex) create database test;

 

Mariadb - 사용자 추가하기

create user 'user_name'@'XXX.XXX.XXX.XXX' identified by 'user_password';

ex) create user 'tester'@'%' identified by 'tester1234';

 

Mariadb - 사용자 권한 부여하기

grant all privileges on db_name.* to 'user_name'@'XXX.XXX.XXX.XXX';
flush privileges;

ex)
grant all privileges on test.* to 'tester'@'%';
flush privileges;

 

 Mariadb의 버전에 혹은 사용자 개발 환경에 따라 달라지는 부분이 발생할 수 있지만 위의 과정을 진행하면 최종적으로 아래와 같이 진행됩니다.

Mariadb에 database 추가하고 user 설정하기

 



출처: https://7942yongdae.tistory.com/130 [프로그래머 YD]

728x90