보조기억장치

Docker Container 통신 본문

Linux

Docker Container 통신

캐세이 2023. 2. 17. 12:19


(네트워크 미구성 상태로 실행시 에러발생)
# docker run -d --name mongodb --network favorites-net mongo
1041070bf19f16cd96efcf7937bfe20430f747d16fa0efbaef39bdd0ee7faea0
docker: Error response from daemon: network favorite-net not found.

(컨테이너 전체 삭제)
# docker container prune

(네트워크 생성)
# docker network create favorites-net
f0f9928de7030035e3122b0a2fcff833a14ea715185ce1a8998ffc249e49ee02

(네트워크 확인)
# docker network ls
NETWORK ID     NAME            DRIVER    SCOPE
c0b06e2a9e24   bridge          bridge    local
f0f9928de703   favorites-net   bridge    local
025d0546e8cb   host            host      local
8817985aed78   none            null      local
// 디폴트 드라이버는 'bridge'

(mongodb 컨테이너 실행)
# docker run -d --name mongodb --network favorites-net mongo
c77be76bfd8436e2ff092590fe5938cb8d447612c9f3de434ded1e78a4abee0d

(Node.js 소스 수정)
mongoose.connect(
  'mongodb://mongodb:27017/swfavorites',
  { useNewUrlParser: true },
  (err) => {
    if (err) {
     console.log(err);
    } else {
      app.listen(3000);
    }
  }
);

(Node.js 컨테이너 실행)
#docker run --name favorites --network favorites-net -d --rm -p 3000:3000 favorites-node
c456a7566c507a1a69c96e61c5fac7f6c98a80996b733e0a2ef46651c4951545

 

(컨테이너 실행확인)
# docker ps -a
CONTAINER ID   IMAGE            COMMAND                   CREATED         STATUS         PORTS                                       NAMES
c456a7566c50   favorites-node   "docker-entrypoint.s…"   4 seconds ago   Up 3 seconds   0.0.0.0:3000->3000/tcp, :::3000->3000/tcp   favorites
c77be76bfd84   mongo            "docker-entrypoint.s…"   5 minutes ago   Up 5 minutes   27017/tcp                                   mongodb