docker로 mysql 설치하기
docker run -d -p 3306:3306 -e MYSQL-ROOT_PASSWORD=${MYSQL_ROOT_PASSROD} --name mocadev_mysql -v ~/data/mysql:/var/lib/mysql mysql
-d Detached모드로 컨테이너를 백그라운드로 실행해준다.
-p <호스트 포트>:<컨테이너 포트>로 사용하며 컨테이너의 포트를 호스트 포트로 노출 시키는 옵션
-e 컨테이너 환경 변수 설정 위에서는 mysql의 root 패스워드를 설정해준다.
--name 실행시킬 컨테이너 이름 설정
-v <호스트 디렉토리>:<컨테이터 디렉토리>로 사용하며 컨테이너 디렉토리를 호스트와 공유해서 파일들을 호스트 디렉토리에 저장한다.
docker-compose.yml
version: '3.1'
services:
mysql:
image: mysql:5.7
container_name: mocadev_mysql
ports:
- 3306:3306
restart: always
environment:
- MYSQL_ROOT_PASSWORD=root패스워드
- MYSQL_USER=생성할 유저
- MYSQL_PASSWORD=생성할 유저 패스워드
- MYSQL_DATABASE=생성할 데이터베이스
volumes:
- ~/data/mysql:/var/lib/mysql
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
mysql 최신 버전을 설치 했더니 connector문제인지 툴에서 접속을 못하는 문제가 발생해서 그냥 5.7버전을 설치했다.
역시 5.7버전은 아무 문제 없이 외부에서도 접속이 잘된다.