1. Docker 란
도커란 컨테이너화된 애플리케이션을 만들고 실행하기 위한 오픈 소스 플랫폼입니다.
쉽게 말해 애플리케이션을 실행하기 위한 특별한 환경인 컨테이너를 만들어주는 도구입니다.
이 컨테이너는 애플리케이션과 필요한 모든 것들을 함께 묶어서 이동하고 실행할 수 있도록 도와줍니다.
이를 통해 애플리케이션을 더 쉽고 효율적으로 관리할 수 있습니다.
2. Docker 설치
- macOS 유저
https://docs.docker.com/desktop/install/mac-install/
- 윈도우 유저
https://www.docker.com/products/docker-desktop/
- 설치 확인
docker -v
3. 프로젝트 내 Docker 설정 및 mysql container 생성
도커 애플리케이션을 정의하고 실행하기 위한 설정 파일입니다.
mysql 기준으로 작성되었습니다.
- 파일명 : docker-compose.yml
- 파일위치 : 프로젝트 최상위 경로
version: "3.9"
services:
db:
platform: linux/x86_64
image: mysql:8
container_name: container-db
environment:
- "MYSQL_RANDOM_ROOT_PASSWORD=true"
- "MYSQL_DATABASE=test"
- "MYSQL_USER=test"
- "MYSQL_PASSWORD=test"
ports:
- "3310:3306"
- version : 도커 컴포즈 파일의 버전을 작성합니다.
- services : 도커 컴포즈 파일에서 정의하는 서비스들의 목록입니다.
- db : mysql 데이터베이스를 실행하기 위한 컨테이너를 생성합니다.
- platform : 실행될 플랫폼을 작성합니다.
- image : 도커 이미지를 사용하여 컨테이너를 생성합니다.
- container_name : 생성될 컨테이너 이름을 지정합니다.
- environment: 컨테이너 내에서 사용할 환경 변수들을 설정합니다.
- "MYSQL_RANDOM_ROOT_PASSWORD=true": mysql 루트 사용자의 임시 무작위 비밀번호를 생성합니다.
- "MYSQL_DATABASE=": 생성될 데이터베이스 이름을 지정합니다.
- "MYSQL_USER=": 사용자 이름을 지정합니다.
- "MYSQL_PASSWORD=": 비밀번호를 지정합니다.
- ports: 컨테이너의 포트와 호스트의 포트를 연결합니다.
4. DBeaver 접속
이제 프로젝트에서 사용하기 위해 설정한 접속 정보로 DBeaver 에 연동해보도록 하겠습니다.
- server Host 는 localhost 도 가능합니다.
- URL 은 Public Key Retrieval is not allowed 와 같은 에러가 발생할 때 아래와 같이 설정해주세요.
jdbc:mysql://127.0.0.1:3310/test?useSSL=false&allowPublicKeyRetrieval=true
(별다른 설정을 하지 않은 URL : jdbc:mysql://127.0.0.1:3310/test)