개발 도구 및 환경/Docker

Docker Volumes 지금까지는 로컬의 파일을 변경하고, docker build 를 해줘야만 docker 내의 파일이 변경이 되었는데 volume을 설정하면 로컬의 파일을 변경하면 docker 내부의 파일도 같이 변경이 된다. docker 내부에서 nodemon으로 실행시킨다. 두 가지를 적용해야 도커내에서도 build 없이 변경점을 적용할 수 있다. Docker-compose를 활용한 MongoDB 연결 먼저 node를 설치하는 것처럼 MongoDB도 새로운 dockerfile을 만들어서 MongoDB를 설치해준다. version: '3.7' # 컴퓨터들 services: # 컴퓨터이름 my-backend: build: context: . dockerfile: Dockerfile volumes: ..
Docker-compose Docker-compose 란 복수 개의 컨테이너를 실행시키는 도커 애플리케이션 정의를 하기 위한 툴이다. 기본적으로 yaml 파일 또는 yml파일 을 사용하여 애플리케이션의 서비스를 구성할 수 있다. yaml 파일로 여러 개의 docker 내부 속성을 설정하고, 실행시켜 docker를 일괄적으로 실행한다고 보면 된다. Docker-compose를 활용한 MongoDB연결 먼저 node를 설치하는 것처럼 MongoDB도 새로운 dockerfile을 만들어서 MongoDB를 설치해준다. # mongo의 버전 5 FROM mongo:5 이제 dockerfile이 각각 node와 mongo가 설치된 2개의 가상컴퓨터를 서로 연결 시켜주기 위해 포트포워딩을 해야하는데, 포트포워딩을 위..
package.json 설정 기존 Dockerfile 은 아래와 같다. # 가상 컴퓨터 만드는 설명서 # 1. 운영체제 설치(node 14버전과 npm, yarn이 모두 설치되어 있는 리눅스) FROM node:14 # 2. 내 컴퓨터에 있는 폴더나 파일을 도커 컴퓨터 안으로 복사하기 COPY ./myfolder WORKDIR /myfolder/ RUN yarn install # 3. 도커 안에서 index.js 실행시키기 CMD yarn start 만약 index.js 파일의 일부를 수정했다고 가정했을때, COPY ./myfolder로 인해 폴더 안에 있는 모든 파일이 복사가 되며 수정/변경된 것이 없는 모듈 또한 RUN yarn install 을 통해 다시 설치 된다. Docker는 Dockerfil..
.dockerignore # 가상 컴퓨터 만드는 설명서 # 1. 운영체제 설치(node 14버전과 npm, yarn이 모두 설치되어 있는 리눅스) FROM node:14 # 2. 내 컴퓨터에 있는 폴더나 파일을 도커 컴퓨터 안으로 복사하기 COPY ./myfolder WORKDIR /myfolder/ # 3. 도커 안에서 index.js 실행시키기 CMD yarn start 한가지 문제는 myfolder 안에 node_modules이라는 모듈관리 폴더가 없는데, 가상 컴퓨터에서는 로컬의 환경에 간섭받지 않도록 dockerfile을 설정해줘야 한다. RUN yarn install 명령어로 dockerfile에 추가하여 모듈을 설치한다. # 가상 컴퓨터 만드는 설명서 # 1. 운영체제 설치(node 14버전..
Docker란? 도커(Docker)는 리눅스 컨테이너에 리눅스 어플리케이션을 프로세스 격리기술을 사용하여 더 쉽게 컨테이너로 실행하고 관리할 수 있게 해주는 오픈소스 프로젝트 이다. Virtual Machine(가상머신) vs Docker Container(도커 컨테이너) 도커는 가상머신이랑 비슷하지만, 가상머신보다 훨씬 빠르고, 자원을 효율적으로 사용한다. 또한 불필요한 운영체제 설치가 필요하지 않아서 가볍다는 장점이 있다. Docker를 사용하는 이유 협업에 있어서 컴퓨터의 개발환경을 모두 똑같이 만들어야 편리하기에 Node.js, 언어, 데이터베이스, 많은 modules 등의 버전을 맞추려면 Docker 로 간단히 설정이 가능하다. Dockerfile 컨테이너를 실행하기 전에 먼저해야 할 것은 이미..