우선 mariadb를 docker 컨테이너로 띄우고 DB를 생성해 보자
mariadb의 root 암호를 지정하려면 -> script 실행을 통해 root 암호 지정 -> mysql -uroot -p
하지만 아래처럼 docker 실행시 설정해주면 쉽게 password를 만들 수 있다!!
root@hostos1:~# docker run --name maria-test -e MYSQL_ROOT_PASSWORD=hi -d \
> -p 3306:3306 mariadb:10.2
root@hostos1:~# docker exec -it maria-test /bin/bash
run 할때 비밀번호가 잘 설정되었나 확인해보기 위해 컨테이너에 접속해보자!
설정한 비밀번호 hi 입력
root@5dba651b8ccb:/# mysql -uroot -p
Enter password:
MariaDB [(none)]>
로그인 되는 걸 확인할 수 있다
컨테이너 안에서 db를 만들어보자
MariaDB [(none)]> create database item;
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> use item;
Database changed
테이블도 한번 만들어봐주고
MariaDB [item]> create table projects (id int(11) NOT NULL, name varchar(255)
-> default null, code varchar(255) default null, primary key(id));
Query OK, 0 rows affected (0.09 sec)
MariaDB [item]> show tables
-> ;
+----------------+
| Tables_in_item |
+----------------+
| projects |
+----------------+
안에 데이터도 넣어보자
MariaDB [item]> insert into projects(id, name, code) values(1,'DevOps','DO180');
Query OK, 1 row affected (0.02 sec)
MariaDB [item]> select * from projects;
+----+--------+-------+
| id | name | code |
+----+--------+-------+
| 1 | DevOps | DO180 |
+----+--------+-------+
1 row in set (0.00 sec)
exit
ctrl + p +q 를 입력해주고 컨테이너 밖으로 나오자
mariadb가 정상작동중임을 확인
워크밴치에 연결하려면 현재 도커가 설치되어 있는 ubuntu의 ip와 컨테이너로 존재하는 mariadb에 컨테이너 ip가 필요하다
insepct 명령어를 마리아db의 ip 알아보자
root@hostos1:~# docker inspect 5dba651b8ccb | grep IPAddress
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.3",
"IPAddress": "172.17.0.3",
우분투의 ip와 mariadb의 ip를 파악했다면
윈도우에서 워크벤치로 컨테이너의 mariadb에 접속해보자
워크 벤치에 접속후
TCP/IP over SSH를 선택
다음과 같이
우분투의 ip와 사용자 이름 비밀번호
maridb의 ip 사용자 이름 비밀번호를 입력해주면
짜잔 접속이 된다!!
++
입력했던 데이터도 정상조회가 된다~~