, Traefik MariaDB 설치

반응형

Traefik MariaDB 설치

 

MariaDB는 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 도커를 사용하면 마리아DB를 컨테이너로 쉽게 실행할 수 있으며, 트래픽을 HTTPS 연결을 관리하는 역프록시로 사용할 수 있다. 이 튜토리얼에서는 Traefik 설정을 사용하여 Docker MariaDB를 설치하는 방법을 보여줍니다.

 

전제조건

시작하기 전에 다음 사항을 확인하십시오:

  • 도커가 설치된 서버
  • 서버의 IP 주소를 가리키는 도메인 이름
  • 작동 중인 Traefik 설치

1단계: 도커 네트워크 만들기

첫 번째 단계는 MariaDB 컨테이너와 Traefik에서 사용할 도커 네트워크를 만드는 것입니다.

docker network create mariadb_network

2단계: 도커 작성 파일 작성

다음 내용을 포함하는 mariadb-compose.yml이라는 도커 컴포지트 파일을 만듭니다:

version: '3.8'

services:
  db:
    image: mariadb
    container_name: mariadb
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=yourpassword
      - MYSQL_DATABASE=yourdatabase
      - MYSQL_USER=yourusername
      - MYSQL_PASSWORD=youruserpassword
    networks:
      - mariadb_network
    volumes:
      - mariadb_data:/var/lib/mysql
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.mariadb.rule=Host(`mariadb.example.com`)"
      - "traefik.http.routers.mariadb.entrypoints=http"
      - "traefik.http.middlewares.https-redirect.redirectscheme.scheme=https"
      - "traefik.http.routers.mariadb-secure.rule=Host(`mariadb.example.com`)"
      - "traefik.http.routers.mariadb-secure.entrypoints=https"
      - "traefik.http.routers.mariadb-secure.tls=true"
      - "traefik.http.routers.mariadb-secure.tls.certresolver=letsencrypt"

volumes:
  mariadb_data:

networks:
  mariadb_network:
    external: true

이 Docker Compose 파일은 MariaDB 컨테이너를 실행하는 db라는 단일 서비스를 정의합니다. db 서비스는 mariadb_network 네트워크에 연결되어 있으며 Traefik 레이블은 서비스에 대한 라우팅 규칙을 정의합니다.

 

 

traefik.https.https.httpsadb 레이블은 Traefik에게 mariadb.example.com 도메인에 대한 요청을 이 서비스로 라우팅하고 HTTP를 사용하도록 지시합니다. traefik.http.routers.mariadb-secure 레이블은 동일한 라우팅 규칙을 정의하지만 Let's Encrypt 인증서와 함께 HTTPS를 사용합니다.

 

volumes 섹션은 mariadb_data라는 이름의 볼륨을 정의하며, 이 볼륨은 데이터베이스 데이터를 유지하는 데 사용됩니다.

 

환경 섹션은 MariaDB 컨테이너의 루트 암호, 데이터베이스 이름 및 사용자 인증 정보를 지정합니다.

 

3단계: Container 시작

다음 명령을 사용하여 Docker Compose를 사용하여 MariaDB 컨테이너 및 Traefik을 시작합니다:

docker-compose up -d

이 명령은 MariaDB 및 Traefik 서비스를 백그라운드에서 시작합니다.

 

4단계: 데이터베이스 연결 테스트

컨테이너가 실행되면 다음 명령을 실행하여 데이터베이스 연결을 테스트할 수 있습니다:

mysql -u yourusername -p -h mariadb.example.com yourdatabase

이 명령은 사용자 암호를 입력하라는 메시지를 표시하고 MariaDB 데이터베이스에 연결합니다.

 

결론

이 튜토리얼에서는 Traefik을 역방향 프록시로 사용하여 HTTPS를 통해 데이터베이스에 안전하게 액세스하는 MariaDB 컨테이너를 설정하는 방법에 대해 배웠습니다. 이 설정을 사용하면 보안 연결을 통해 MariaDB 데이터베이스를 쉽게 관리하고 무단 액세스로부터 데이터를 보호합니다.

728x90
LIST

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band