Mysql을 사용하여 프로젝트를 하나 진행 중이었습니다.
해당 프로젝트가 끝나고 새로운 프로젝트를 진행하게 되었는데,
새로운 프로젝트에서는 MariaDB를 사용해야하는 상황이었고, Mysql과 MariaDB는 서로 프로토콜, 프로세스 명, 명령어 등을 쉐어하고 있다고 알려져 있어 MySql이 설치되어있는 상황에서 MariaDB를 다운하면 충돌이 발생하고
MySql을 지우고 다운받을 수 없는 상황이라 동시에 사용하기 위해 Docker로 설치해여 사용하려 합니다.
Docker??
컨테이너 기반의 오픈소스 가상화 플랫폼
- 다양한 프로그램, 실행 환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램 배포 및 관리를 단순화 한다.
- 컨테이너 엔진으로 리눅스 커널 기능을 사용하여 운영체제 위에 컨테이너를 만들고, 데몬으로 실행된다.
Linux 커널의 도커 엔진
컨테이너??
- 호스트 OS상에 논리적인 구획(컨테이너)을 만들고, 어플리케이션을 작동시키기 위해
필요한 라이브러리나 어플리케이션 등을 하나로 모아, 마치 별도의 서버인 것처럼 사용할 수 있게 만든 것 - 컨테이너는 오버헤드가 적기 때문에 가볍고 고속으로 작동하는 것이 특징입니다.
Docker Image??
- Docker에서 image는 파일로 어플리케이션 실행에 필요한 독립적인 환경을 포함한 일종의 템플릿
- 소스 코드, 라이브러리, 종속성, 도구 및 응용 프로그램을 실행하는데 필요한 기타 파일을 포함하는 불변 파일
- 읽기 전용이며 스냅샷 이라고도 부르고 이러한 일관성은 개발자에게 안정적이고 균일한 조건에서 테스트 할 수 있도록 함.
Docker Install
- brew로 설치
- virtualbox, vargrant 등 가상머신 위에 도커를 띄우는 작업 필요
- compose, machine등 추가 설치 필요
- 서버 실행시 호스트 OS에서 서버 접근시 포트 포워딩 필요
- brew cask로 설치
- brew cask 는 Docker Desktop on Mac 도커를 설치해주며, docker-compose, docker-machine을 같이 설치 해줌
- 맥 OS에서 띄우기 때문에 가상 머신에서 포트 포워딩을 할 필요 없음
|
|
위와 같이 입력하면 docker는 정상적으로 잘 다운된다!
MariaDB Install
|
|
여기까지 잘 하셨으면 이제 local에서 세팅 가능합니다. 저는 DataGrip을 통해 연결해보도록 하겠습니다.
DataGrip 연결
아래 순서대로 진행하면 연결 가능하다!!!