DevOps

[docker] docker compose로 mysql 컨테이너 생성 후 실행하기

미소서식지 2024. 2. 7. 21:04

docker-compose.yaml 파일을 해석해봤던 저번 포스팅에 이어서, 해당 파일을 빌드에서 컨테이너를 생성한 후 어떻게 mysql 서버에 접속해서 실행해야 하는지 알아보즈아.

 

 

위의 사진으로 보았을 때 wanted-designpattern-mysql-1이라는 컨테이너가 started된 것을 볼 수 있다.

원래 작성했던 docker-compose.yaml에선 딱히 도커 컨테이너 명을 설정해주지 않았으나,,

 

services:
  mysql:
    container_name: mysql_container
    user: 501:20
    image: mysql:8.0.33
    ports:
      - 13306:3306

 

이런 식으로 설정해주면 

 

실행 중인 컨테이너만 보여주는 

 

docker ps

 

명령어만 치면, 실행 중인 docker 컨테이너를 밑에서 모두 확인할 수 있다.

 

 

NAMES 부분을 보면 실행 중인 도커 컨테이너 명을 볼 수 있다.

 

mysql 컨테이너 실행 + 접속하기

docker exec -it {컨테이너명} bash

 

(pc 다시 켰다고 가정하고) 위의 명령어를 입력하면 컨테이너를 실행시키고 터미널로 접속할 수 있다.

 

 

이렇게 되면, mysql이 실행된 게 아니라 컨테이너 환경인 리눅스 터미널로 접속한 것이다.

여기서 본격적으로 user 이름과 password를 입력하여 mysql을 실행해야 한다.

 

mysql 서버를 접속하기 위해서는 아래 코드를 입력해주면 된다.

root 사용자로 mysql 서버에 접속하게 된다.

 

mysql -u root -p

 

root password를 입력해야 한다!

 

 

그러면 위와 같이 된다.

 

show databases;

 

를 하면 생성된 데이터베이스를 볼 수 있다.

 

Ref.

https://velog.io/@mutexlocking/Docker-docker-compose로-mysql-컨테이너-생성-후-컨테이너-실행까지