Server And Configuration Management/docker

세무민의 코딩일기 : docker 설치 및 DB 연결하기(MariaDB)

세기루민 2022. 3. 17. 00:09
728x90

안녕하세요 세무민입니다. 

이번에 다뤄볼 내용은 도커에 대한 내용입니다. 

 

 


1. Docker?

- 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 

-> 도커는 소프트웨어를 컨테이너라는 표준화된 유닛으로 패키징하는데 이때 컨테이너에는 라이브러리, 시스템 도구,

코드 등 소프트웨어를 실행하는데 필요한 모든것들이 들어가게 되고 따라서 환경에 구애받지 않구 애플리케이션을 

신속하게 배포 및 확장할 수 있도록 도와주는 플랫폼이다.  

- 한줄요약 : 리눅스 컨테이너 기술을 기반으로 하는 오픈 소스 서비스이다.


2. Docker 설치

 

Get Started with Docker | Docker

Learn about the complete container solution provided by Docker. Find information for developers, IT operations, and business executives.

www.docker.com

위의 URL에서 도커를 설치할 수 있다. 


3. Docker Desktop

- Docker를 설치하고 Docker Desktop을 실행했을 때 정상적으로 실행되면 위와 같은 화면이 나타난다.

- 간혹 연결이 잘 안되서 "Docker Desktop stoped......"라고 뜨는 경우가 있는데 

  stackoverFlow에 나온 답변으로는 setting.json 파일에 "wslEngineEnabled": true 로 변경하면 된다고 한다. 

- 그렇지만 나는 재설치로 해당 문제를 해결했다. 


4. Docker Hub

- 도커를 설치 완료했다면 도커 이미지를 이제 다운받아야 한다. 

- 도커 이미지라는 건 컨테이너에 필요한 서버 프로그램, 소스코드 및 라이브러리 등 특정 프로세스를 실행하기 위한 

파일들을 의미한다. 

- 도커 이미지를 받는 방법은 도커 허브 아이디를 생성하면 무료로 다운받을 수 있다. 

 

Docker Hub Container Image Library | App Containerization

We and third parties use cookies or similar technologies ("Cookies") as described below to collect and process personal data, such as your IP address or browser information. You can learn more about how this site uses Cookies by reading our privacy policy

hub.docker.com

- 위의 사이트에서 회원가입을 한 뒤 아래와 같이 Docker Desktop에 로그인을 해주면 끝난다. (아이디는 보안상 지움..)


5. Docker Hub MariaDB 다운로드 받은 후 컨테이너 생성하기

1. 마리아 디비 pull

docker pull mariadb

정상적으로 실행되면 위의 이미지 처럼 진행된다. 

2. 도커에 마리아 디비 설치하기

docker run --name mariadb -d -p 3308:3308 --restart=always -e MYSQL_ROOT_PASSWORD=1234  --name mariadb mariadb

마리아 디비가 재대로 설치되면 Docker Desktop에서 확인이 가능하다.

3. DB에 접속하기 

1. docker exec -it mariadb /bin/bash
2. mysql -u -root -p

정상적으로 DB의 접속이 되었다면 사진처럼 될 것입니다. 

- MariaDB의 기본 설정은 원격 접속이 안됨으로  docker exec 명령어를 통해서 컨테이너 bash로 연결하여

원격접속을 하고 DB를 연결하였습니다. 

4. vim 설치 및 conf 설정 추가

1. apt-get update && apt-get install nano vim 
2. vi /etc/mysql/my.cnf

 - 우선 vim이 설치되지 않았기 때문에 vim을 설치해주는데 나는 우분트 환경이기 때문에 apt-get을 이용하여

  설치하였습니다. 

 - 설치가 완료되면 my.cnf을 아래와 같이 편집해줍니다. 

character-set의 기본설정과 character-set-client-handshake = false로 설정하여 서버 문자셋을 사용하도록 설정해줍니다. 


위와 같이 설정해주면 Docker와 DB의 연결과 기초적인 도커 설정은 끝입니다.

추가적으로 사용자 설정이나 관리자 설정과 같은 내용들은 추후에 다뤄보도록 하겠습니다. 

728x90