이제 도커 네트워크까지 배웠으니, **프론트(React) - 백엔드(Node.js) - 데이터베이스(MongoDB)**로 구성된 3-Tier 구조를 실제로 배포해봅시다.
먼저 일반적인 방식으로 호스트 머신에 React, Node.js, MongoDB를 설치해 실행할 수 있습니다.
하지만 이렇게 하면 환경 설정이 복잡하고 배포 시마다 동일한 환경 보장 어려움 → 그래서 **도커라이징(Dockerizing)**을 진행합니다.
docker run -d --name my-mongo \\
-p 27016:27017 \\
-v mongo-data:/data/db \\
mongo --auth
v mongo-data:/data/db → 데이터를 컨테이너 삭제 후에도 유지-auth → 인증 활성화docker exec -it my-mongo mongosh admin
db.createUser({
user: "root",
pwd: "1234",
roles:[{ role: "root", db: "admin" }]
});
use my-todo;
db.users.insertOne({
username: "sesac",
password: "1234",
age: 25,
refreshToken: "dummy_refresh_token"
});
docker network create my-net
docker run -d --name my-mongo-db \\
-p 27016:27017 \\
--network my-net \\
-v mongo-data:/data/db \\
mongo