반응형

Synology Docker(Container Manager)에 MariaDB를 설치해본다.
컨테이너끼리 통신이 되기 때문에 DB 컨테이너 하나만 있어도 여러개의 도커 컨테이너가 DB를 이용할 수 있다.

DB 컨테이너는 하나만 설치하고, 워드프레스, 미디어위키, 개인 웹서버 등을 개별 컨테이너로 설치하여 이용할 수 있다.


1.1 DSM 방식으로 설치하기

1. mariadb 이미지 내려받기

mariadb 검색 후 나타나는 항목을 더블클릭한다.

latest 선택

 

2. 이미지 설치

내려받은 mariadb:버전명 더블클릭

 

3. 컨테이너 생성


MARIADB_ROOT_PASSWORD 항목을 추가해야 함.

위 항목이 없으면 암호 또는 암호 없음을 설정하라는 에러 로그가 생기며 컨테이너가 종료됨.


포트 설정은 기본 3306이며, 기본값을 사용할 때에는 설정하지 않아도 된다. 로컬 DB의 3306 포트와 충돌한다면 컨테이너의 포트 포워딩을 설정하거나 로컬 DB의 포트를 변경해야 한다.


폴더 추가하기로 /docker 아래에 위와 같은 폴더를 추가하고 마운트 경로를 입력.


1.2 콘솔 방식으로 설치하기

재설치를 하다보면 DSM 방식이 불편하다는 것을 느끼게 되어, 콘솔 명령이나 Portainer로 설치하게 됨.

$ sudo docker run --detach --network bridge --name mariadb --env MARIADB_ROOT_PASSWORD=rootpass mariadb:latest

root 권한 때문에 sudo 명령으로 시작.

  • --name 은 컨테이너 이름 설정.
  • --network 는 어느 네트워크에 붙일지 설정.
  • --env 는 환경설정.
  • 마지막 mariadb:latest는 설치할 docker 이미지와 버전.

⬇️ 네트워크를 추가하려면

$ sudo docker network create some-network

--env 환경설정 항목

  • MARIADB_USER 사용자 계정 설정
  • MARIADB_PASSWORD 사용자 암호 설정
  • MARIADB_ROOT_PASSWORD 루트 암호 설정

나머지 추가 설정은 Portainer 또는 DSM Docker에서 하면 된다.


2. 콘솔 접속

$ mysql -h localhost -P 3306 --protocol=TCP -u root -p

-h 는 호스트 주소를 입력. localhost 또는 127.0.0.1 또는 172.17.0.1(브릿지 IP)

-P 설정한 포트 번호를 입력. 로컬 주소로 접속할 경우 로컬 포트 입력.

--protocol=TCP 필수 입력. 없으면 접속 안 됨.

-u 계정 이름을 입력

-p 계정 암호를 사용하면 필수 입력. 없으면 오류 발생.

실행하면 Enter password: 줄이 나타나고 계정 암호를 입력한다.

이렇게 접속되면 성공

 

반응형

관련글