Docker로 MySQL 설치

김승현·2023년 4월 5일
0
post-thumbnail

1. MySQL Image 다운받기

  • 명령어 : docker pull mysql:버전
    - 버전 생략시 최신 버전으로 설치한다.
  • 이미지 확인 명령어 : docker images


2. 다운 받은 Image로 Container 생성

명령어 : docker run --name mysql-container -e MYSQL_ROOT_PASSWORD=test1234 -e MYSQL_DATABASE=testDB -p 3306:3306 -v mysql-volume:/var/lib/mysql --restart=always --cap-add=sys_nice -d mysql

💡 옵션

  • --name : 컨테이너 이름 설정
  • -e : 환경변수(PASSWORD, DATEBASE) 설정
  • -p : 포트 설정(외부포트: Docker 내부포트)
  • -v : volume 설정
  • --restart
    • no : container를 재시작 시키지 않는다. (default)
    • on-failure[:max-retries] : container가 정상적으로 종료되지 않은 경우(exit code가 0이 아님)에만 재시작 시킨다. max-retries도 함께 주면 재시작 최대 시도횟수를 지정할 수 있고, 테스트 서버 등과 같은 리모트에 설정하면 좋을 것 같다.
    • always : container를 항상 재시작시킨다. exit code 상관 없이 항상 재시작 된다.
    • unless-stopped : container를 stop시키기 전 까지 항상 재시작 시킨다.
  • --cap-add=sys_nice : 컨테이너가 프로세스 나이스 값을 올리고, 실시간 스케줄링 정책을 설정하고, CPU 선호도 설정 및 기타 작업을 수행할 수 있도록 컨테이너에 CAP_SYS_NICE 기능을 부여한다.
  • -d : Dispatch mode(백그라운드에서 실행)
  • 마지막의 mysql은 이미지 이름

  • 운영 중인 컨테이너 확인 : docker ps

3. Container에 접속하기

  • Container 내부 접속 명령어 : docker exec -it mysql-container bash
  • Mysql 관리자로 접속
    - mysql -u root -p
    - 비밀번호 입력

  • Database 확인
    - SHOW DATABASES;
  • 컨테이너 실행 시에 등록한 testDB를 확인할 수 있다.
  • 추가로 Database 생성 : CREATE DATABASE 이름

4. MySQL GUI 관리도구로 열기

  • 보통 MySQL Workbench를 많이 사용하나 HeidiSQL로 열겠다.

profile
개발자로 매일 한 걸음

0개의 댓글