docker pull mysql:버전
docker images
명령어 : 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
docker exec -it mysql-container bash
mysql -u root -p
SHOW DATABASES;
CREATE DATABASE 이름