도커 데이터베이스 이미지로 설치하기 (컨테이너 접속하기 명령문)
- 찾기
docker search mysql
- 이미지 당겨오기
docker pull mysql
- 실행
docker mysql 실행
Starting a MySQL instance is simple:
$ docker run --name some-mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:tag
docker run --name webserver-mysql -d -p
로컬에 3306포트로 mysql이 돌아가고 있기 때문에 포트포워딩 필요
docker run --name webserver-mysql -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=1234 mysql
mysql이 없으면 자동으로 pull한다. 버전은 가장 최신으로.
사용 방법은 도커 허브가 제공 https://hub.docker.com/_/mysql
- 우리 수업에는 window에 이미 mysql이 설치되어 있습니다.
- host에서 3307로 접속시 컨테이너의 3306으로 포트포워딩 시킵니다.
- 초기 root비밀번호를 전달 해야 합니다
- 이후 데이터베이스 설치되고 켜질 때 까지 약 3분 정도 소요가 됩니다. log확인 ~~~~>(port: 3306 MySQL Community Server - GPL)
docker run --name <container_name> -d -p 3307:3306 -e MYSQL_ROOT_PASSWORD=비밀번호 mysql
- 도커 컨테이너 안으로 접속하기
- -1 attach - 가동중인 컨테이너에 연결됩니다.
- 프로세스가 돌고 있으면 가동되는 프로세스로 진입됩니다.(log) )
docker ps
docker attach <가동중인컨테이너>
빈 공간에서 커서가 깜빡거린다. 접속했다는 뜻임.
attach는 백그라운드 프로세스에 직접 접근한 것.
-백그라운드에 진입하면 빠져나오는게 안되는 듯.. powershell 새 창을 열고 이전건 끄기.
- -2 exec - 가동중인 컨테이너에 새로운 프로세스로 연결합니다.
- mysql 서버는 백그라운드로 돌기 때문에 이렇게 접근
- 진입시 우분투 이미지가 설치된 우분투 환경으로 접속 됩니다.
- -i : 인터렉티브(상호작용), t- tty(터미널)
docker exec -it <가동중인컨테이너> /bin/bash
docker exec -it <가동중인컨테이너> /bin/sh
docker desktop의 container에서 terminal에 접근한 것과 같다. 이 상태에서 리눅스 명령문을 사용 가능.
- 도커mysql 쉘에 접속해보기
docker exec -it <container_name> /bin/bash mysql -u root -p
workbench로 도커접속하기
- 컨테이너 생성시 3307로 접속시 3306으로 포트포워딩 시켰습니다.
- 클라이언트에서 접속은 이렇게 할 수 있겠죠.
- 도커 컨테이너 안에 mysql은 기본 port가 3306입니다.
'AWS' 카테고리의 다른 글
230331 Docker 5 (1) | 2023.03.31 |
---|---|
230331 Docker 4 (0) | 2023.03.31 |
230330 Docker 2 (0) | 2023.03.30 |
230330 Docker (0) | 2023.03.30 |
AWS 230328 aws기초5 (0) | 2023.03.28 |