2024. 12. 30. 13:13ㆍProject Log/학부 졸업프로젝트
먼저 docker-compose 안의 도커 컨테이너 5개를 모두 실행했다.
MongoDB 도커 컨테이너 테스트
아래는 몽고 DB 컨테이너로 들어가는 커맨드이다.
docker exec -it docker-mongodb-1 /bin/bash
컨테이너 안에 들어오면 아래 파일들이 경로에 존재한다.
MongoDB Compass (GUI)도 다운로드 받았다.
mongosh를 입력하면 mongo db와 상호작용하기 위한 프롬프트가 나타난다.
mongosh
아래 커맨드를 입력하여, 일반 db에 컬렉션을 추가하고 admin db에 원격 접속을 위한 admin 유저를 생성한다.
use test; // test db 사용
show dbs // db 목록 확인
db.createCollection('userinfo'); // 현재 사용 중인 db에 userinfo 컬렉션 추가
use admin; // admin db 사용
db.createUser({user:"test",pwd:"test",roles:["root"]}); // 원격 접속을 위한 admin 유저 생성
MongoDB Compass 에서 Add new connection > URI 정보 입력을 한다.
Advanced setting > Authentication > 사용자 정보 입력
MongoDB Compass에 성공적으로 접속했다. test db에서 아까 커맨드로 생성했던 userinfo 컬렉션을 확인할 수 있다.
product 컬렉션 안에 데이터를 넣어보았다.
db.product.insertOne({ "칙촉": 3000, "허니버터칩": 1700, "새우깡": 1500 })
MySQL 도커 컨테이너 테스트
docker exec -it docker-db-1 /bin/bash
MySQL에 root로 접속한다. 비밀번호를 잘못 입력하면 권한 거부를 받을 수도 있다. 제대로 입력하면 'mysql>' 이 나온다.
mysql -u root -p
show databases;
MySQL workbench에도 connection 등록을 한다.
테스트로 데이터베이스와 테이블을 만들고, 데이터를 추가해보았다.
create database test;
use test;
CREATE TABLE products (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
price DECIMAL(10, 2) NOT NULL
);
SHOW TABLES;
프롬프트에서 products 테이블에 데이터를 몇 개 insert 하고, mysql workbench를 확인해보니 정상적으로 추가되어 있었다.
INSERT INTO products (name, price) VALUES
('Apple', 1.50),
('Banana', 0.80),
('Orange', 1.20),
('Milk', 2.50),
('Bread', 3.00);
* 참고 사이트
도커를 이용한 mongo DB 설치 및 사용 방법: https://blog.projectdh.link/100
Docker에 MySQL 띄우기: https://hipopatamus.tistory.com/109