블로그 이름

[Docker] 윈도우에서 Docker 로 Maria DB 실행 본문

개발/기타

[Docker] 윈도우에서 Docker 로 Maria DB 실행

Hide 2025. 3. 27. 23:58

어제는 윈도우에서 Docker를 설치하는 방법에 대해 알아보았다. 오늘은 Windows에 설치한 Docker를 사용하여 Maria DB 실행해보고자 한다.

 

Windows에서 Docker로 MariaDB 실행하기

 

1. MariaDB 환경 변수 설정 (.env 파일 생성)

MariaDB 설정을 쉽게 관리하기 위해 .env 파일을 생성한다. 프로젝트 폴더에 .env 파일을 만들고 아래 내용을 추가.

MYSQL_ROOT_PASSWORD=your_root_password
MYSQL_DATABASE=your_database
MYSQL_USER=your_user
MYSQL_PASSWORD=your_password

이 파일은 Docker Compose에서 환경 변수로 사용된다.

.env 파일이란 환경변수(Environment Variables)를 저장하는 파일으로 Docker Compose는 이 파일을 읽어서 해당 환경변수를 컨테이너 설정에 반영한다. .env 파일을 사용하면 설정 변경이 쉬우며  (MYSQL_PASSWORD=PW 와 같이 쉽게 변경할 수 있다.)  .gitignore에 .env 파일을 추가하여 중요한 정보가 저장소에 포함되지 않도록 보호할 수 있어 보안성을 높이 수 있다.

2. Docker Compose 파일 작성

docker-compose.yml 파일을 생성하고 다음 내용을 추가.

version: '3.8'

services:
  mariadb:
    image: mariadb:latest
    container_name: mariadb_container
    restart: always
    env_file:
      - .env
    ports:
      - "3306:3306"
    volumes:
      - mariadb_data:/var/lib/mysql

volumes:
  mariadb_data:

이 설정은 MariaDB 컨테이너를 생성하고, 환경 변수 파일을 사용하여 설정을 적용한다.

 

docker-compose.yml 파일은 여러 개의 Docker 컨테이너를 정의하고 실행하는 구성 파일으로, 복잡한 명령어 없이 컨테이너를 쉽게 관리할 수 있다.

services는 실행할 서비스 목록을 정의하는 섹션으로 

image는 사용할 MariaDB 이미지를 지정하고

container_name에 컨테이너이름 지정,

restart:always는 컨테이너 종료 시 자동 재시작 설정,

env_file은 env 파일을 불러와 환경 변수를 적용

ports는 호스트와 컨테이너 간의 포트를 매핑하며

volumes는 컨테이너의 데이터를 로컬pc에 저장하기 위한 볼륨 설정이다. 

services의 volumes의 mariadb_data:/var/lib/mysql은 컨테이너 maraidb의 데이터로 최하단의 volumes에 mariadb_data를 지정하여 로컬에 데이터를 저장하여 사용할 수 있다.

3 Docker Compose로 MariaDB 실행

터미널(또는 명령 프롬프트, PowerShell)을 열고, docker-compose.yml 파일이 위치한 폴더에서 다음 명령어를 실행

docker-compose up -d

이 명령어를 실행하면 MariaDB 컨테이너가 백그라운드에서 실행된다. 실행된 컨테이너 목록을 확인하려면 다음 명령어를 사용한다.

docker ps

4. MariaDB 접속 확인

MariaDB 컨테이너가 정상적으로 실행되었는지 확인하기 위해 다음 명령어를 실행

docker exec -it mariadb_container mysql -u root -p

비밀번호를 입력하면 MariaDB 콘솔에 접속할 수 있다.

5. 컨테이너 중지 및 삭제

MariaDB 컨테이너를 중지하거나 삭제하고 싶다면 다음 명령어를 사용

docker-compose down

이 명령어는 실행 중인 MariaDB 컨테이너를 중지하고 삭제한다. 데이터를 유지하려면 volumes 설정을 유지한 상태로 컨테이너를 다시 실행하면 된다.

 

오늘은 Windows 환경에서 Docker를 사용하여 MariaDB를 실행해보았다. DBeaber로 설정한 환경변수에 맞는 계정으로 접속하는 것까지 성공하였다. 필요에 따라 설정을 변경하거나 추가 구성을 할 수 있으며, 다른 서비스와 연동할 수도 있다. 추후 DB 서버 외에도 해봐야겠다.