• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글

Docker로 Mairadb(MySQL) 편하게 설치하기.

달소 달소 481

3

2

안녕하세요. 달소입니다.

이번글에서는 보편적으로 많이 사용되는 MariaDB(MySQL)을 도커로 편하게 설치해서 운영해보도록하겠습니다.

이 RDMBS의 경우 Wordpress나 Rhymix 등 여러 플랫폼에서 많이 사용되기 때문에 한번 구축 잘해놓으면 추후에 많이 손댈필요가 없어서 매우 편하고 도커로 구축할경우 서버이전시 마이그레이션도 간편하기 때문에 이번기회에 네이티브에서 도커로 모두 이전예정입니다.

설치환경

Ubuntu 20.04 LTS
Docker
Docker-compose

Mariadb 10.8.2-rc

사용할 이미지는 MariaDB의 공식이미지입니다.

Linux server것을 사용해볼까했는데 버전이 너무낮아서(10.5) 이왕이면 최신버전을 설치하기위해 공식 이미지를 사용해봅니다.

Docker Hub

Mariadb 컨테이너 생성하기

여기서는 docker-compose를 이용해서 진행하겠습니다.

볼륨매칭 시켜줄 디렉터리를 만들고 docker-compose.yml을 작성하겠습니다.

mkdir -p /data/mariadb/data
cd /data/mariadb
vi docker-compose.yml
version: '3.1'

services:

  db:
    container_name: wp_mariadb
    image: mariadb:10.8.2-rc
    restart: always
    environment:
      MARIADB_ROOT_PASSWORD: example
    ports:
      - 3306:3306
    volumes:
      - /data/mariadb/data:/var/lib/mysql

내용은 이미지와 같습니다. 크게어려운 내용은 없으니..
container_name : 컨테이너 이름
image : mariadb:버전
restart : 도커 컨테이너가 꺼지면 자동으로 재시작
MARIADB_ROOT_PASSWORD: 최초 root PW // 추후변경할거라 아무거나..
ports: 기존 Native처럼 사용하실거면 저처럼 3306:3306 포트를 바꾸려면 입맛대로
volumes: conf 파일이나 데이터 파일 저장 위치

작성이 다되었으면 docker-compose up -d 명령어로 시작을 시켜주겠습니다.

이미지를 받고 컨테이너가 다 실행되면 아래 명령어로 컨테이너 내부에 진입할 수 있습니다.(혹은 Portainer의 콘솔 사용)

docker exec -it [컨테이너이름] bash

진입후에 mysql -u root -p 명령어 입력 후 아까 docker-compose에서 적어뒀던 root password로 접속하시면 됩니다.

ROOT PW 변경하기

Root PW를 기본 docker-compose.yml 설정파일에 두는걸 보안상 위험하니 반드시 pw를 변경해주세요.

위 접속한 콘솔에서 아래 명령어로 패스워드를 변경해주겠습니다.

mysql_secure_installation

명령어 입력후 나오는 대화형 콘솔에서 pw 변경과 테스트 db삭제 등등 진행해주시면됩니다.

그리고 다시 mysql -u root -p 로 접근한다음 변경한 pw를 넣어주시면됩니다.

추후 마이그레이션시에는 간단하게 docker-compose.yml파일과 data폴더만 가지고 가면 어디서든 동일한 환경으로 mariadb를 실행하실 수 있습니다.

설치한 MariaDB에 원격접속 하기

그래도 가끔은 MariaDB 원격접속이 필요하시다면 Heidi SQL프로그램등을 통해 진행해주시면되는데요.

위에 remote 설정을 따로 건드리시지 않았다면 docker-compose.yml에서 포트매핑해준 포트로 접속해주시면됩니다.

접속 잘됩니다~

신고공유스크랩
2
profile image 1등
초보나스 2022.05.03. 17:19

도커는 완전 초보인데요 MySQL 요건 예전에 약간 불법적인 거지만

게임 프리서버 구동했을때 MySQL 사용했던거 같네요 물론 초보단계지만

그떄 사용하였던게 MySQL네요 ㅎㅎ 아는거 나오니 좋네요 ㅎㅎ

profile image
달소 글쓴이 2022.05.03. 17:46
초보나스

ㅎㅎ mysql이 아마자 전세계에서 가장 유명한 dbms일겁니다!

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story

등록된 글이 없습니다.