프로그래밍

MariaDB Docker와 Docker-Compose 설정법

MoneyCanon 2024. 6. 25. 18:00

MariaDB를 Docker와 Docker-Compose를 사용하여 설정하는 방법에 대해 이야기해보겠습니다. Docker를 사용하면 데이터베이스 설정과 관리를 쉽게 할 수 있으며, Docker-Compose를 사용하면 여러 컨테이너를 동시에 관리할 수 있습니다. MariaDB는 MySQL을 기반으로 한 오픈 소스 데이터베이스로, 다양한 애플리케이션에서 널리 사용됩니다.

 

1. Docker 설치

먼저, Docker가 설치되어 있어야 합니다. Docker가 설치되지 않았다면 Docker 공식 사이트에서 설치하세요.

2. MariaDB Docker 이미지 받기

Docker Hub에서 MariaDB 이미지를 받을 수 있습니다. 터미널을 열고 다음 명령어를 입력하여 MariaDB 이미지를 다운로드하세요.

docker pull mariadb

3. MariaDB 컨테이너 실행

다음 명령어를 사용하여 MariaDB 컨테이너를 실행합니다. 여기서는 기본 사용자와 비밀번호를 설정합니다.

docker run --name mariadb-container -e MYSQL_ROOT_PASSWORD=your_password -d mariadb
--name: 컨테이너 이름을 지정합니다.
-e MYSQL_ROOT_PASSWORD: MariaDB 루트 사용자의 비밀번호를 설정합니다.
-d: 컨테이너를 백그라운드에서 실행합니다.

4. MariaDB 컨테이너 확인

MariaDB 컨테이너가 정상적으로 실행되고 있는지 확인하려면 다음 명령어를 사용하세요.

docker ps

여기까지가 Docker를 사용하여 MariaDB를 설정하는 기본적인 방법입니다.

Docker-Compose를 사용한 MariaDB 설정

Docker-Compose를 사용하면 여러 컨테이너를 한꺼번에 설정하고 관리할 수 있습니다. 다음은 Docker-Compose를 사용하여 MariaDB를 설정하는 방법입니다.

1. Docker-Compose 설치

먼저, Docker-Compose가 설치되어 있어야 합니다. Docker-Compose가 설치되지 않았다면 Docker-Compose 공식 사이트에서 설치하세요.

2. docker-compose.yml 파일 작성

프로젝트 디렉토리에 docker-compose.yml 파일을 작성합니다. 다음은 MariaDB를 설정하는 예제 파일입니다.

version: '3.1'

services:
  db:
    image: mariadb
    container_name: mariadb-container
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: your_password
      MYSQL_DATABASE: your_database
      MYSQL_USER: your_user
      MYSQL_PASSWORD: your_user_password
    ports:
      - "3306:3306"
    volumes:
      - db_data:/var/lib/mysql

volumes:
  db_data:

 

 

  • version: Docker-Compose 파일의 버전을 지정합니다.
  • services: 설정할 서비스를 정의합니다.
    • db: MariaDB 서비스를 정의합니다.
      • image: 사용할 Docker 이미지를 지정합니다.
      • container_name: 컨테이너 이름을 지정합니다.
      • restart: 컨테이너가 중지되었을 때 자동으로 다시 시작하도록 설정합니다.
      • environment: MariaDB 환경 변수를 설정합니다.
        • MYSQL_ROOT_PASSWORD: MariaDB 루트 사용자의 비밀번호.
        • MYSQL_DATABASE: 생성할 데이터베이스 이름.
        • MYSQL_USER: 생성할 사용자 이름.
        • MYSQL_PASSWORD: 생성할 사용자의 비밀번호.
      • ports: 호스트와 컨테이너 간의 포트를 매핑합니다.
      • volumes: 데이터가 저장될 볼륨을 설정합니다.
  • volumes: 데이터 지속성을 위한 볼륨을 정의합니다.

 

3. Docker-Compose로 MariaDB 실행

터미널을 열고 docker-compose.yml 파일이 있는 디렉토리로 이동한 다음, 다음 명령어를 입력하여 Docker-Compose를 실행합니다.

docker-compose up -d
  • up: Docker-Compose 파일에 정의된 서비스를 시작합니다.
  • -d: 서비스를 백그라운드에서 실행합니다.

4. MariaDB 컨테이너 확인

MariaDB 컨테이너가 정상적으로 실행되고 있는지 확인하려면 다음 명령어를 사용하세요.

docker-compose ps

5. MariaDB 접속

MariaDB 컨테이너에 접속하려면 다음 명령어를 사용합니다.

docker exec -it mariadb-container mysql -u root -p

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

결론

Docker와 Docker-Compose를 사용하면 MariaDB를 쉽게 설정하고 관리할 수 있습니다. Docker를 사용하여 MariaDB 이미지를 받고 컨테이너를 실행하는 기본적인 방법과 Docker-Compose를 사용하여 여러 컨테이너를 한꺼번에 설정하고 관리하는 방법을 알아보았습니다. 이를 통해 더 효율적으로 데이터베이스를 운영할 수 있습니다.