분류 전체보기

    [Docker] docker compose

    - docker run 명령어는 매우 길어질 수 있으며, 매번 실행 할 때 마다 명령어를 입력하는데 한계가 있다. 이를 자동화 하기 위한 수단이 docker compose 이다. * docker-compose.yml 파일 작성 # 도커 컴포즈의 버전 version: "3" # 이곳에 실행하려는 컨테이너들을 정의 services: # 컨테이너 이름 react: # 현 디렉토리에 있는 Dockerfile 사용 build: # 도커 이미지를 구성하기 위한 파일과 폴더들이 있는 위치 context: . # 도커 파일 지정 dockerfile: Dockerfile.dev # 포트 맵핑 로컬포트:컨테이너포트 ports: - "3000:3000" # 로컬머신에 있는 파일들 맵핑 volumes: - /usr/src/a..

    React 개발 환경 구성

    * Nodejs 설치 # 설치 > sudo npm cache clean --force > sudo npm install -g n # 업데이트 > sudo n stable * npm 설치 > sudo npm install -g npm * 리액트 설치 # [./]는 리액트를 설치할 폴더 > npx create-react-app ./ * 리액트 어플리케이션 스타트 > npm run start * 리액트 프로젝트 테스트 > npm run test * 리액트 빌드 > npm run build # build를 성공하면 프로젝트 폴더 내에 build 폴더가 생성되며 해당 폴더 내부에 파일 만들어짐

    [Docker] Volume 맵핑

    * Docker Volume을 사용 하는 이유 : 소스코드 변경에 따라 매번 컨테이너 이미지에 복사하고 이미지를 새로 빌드하기에는 낭비가 너무 크다. : 볼륨을 별도로 만들고 참조하는 구조로 가면 소스 변경 시 매번 이미지 빌드가 필요 없다. * Volume 맵핑 # > docker run -p 5000:8080 -v /usr/src/app/node_modules -v $(pwd):/usr/src/app junducut/nodejs > docker run -p [호스트포트]:[컨테이너포트] -v [맵핑에서 제외할 컨터이너 내부의 경로] -v [맵핑될로컬경로]:[맵핑할컨테이너경로] [이미지아이디]/[이미지명]

    [Docker] 간단한 테스트 목적의 Node.js 앱 만들기

    * npm 설치 > brew install npm * package.json 만들기 # 프로젝트 폴더로 이동 > cd /desktop/nodejs-docker-app/ # 패키지 만들기 > npm init * package.json에 express 디펜던시 추가 { "name": "nodejs-docker-app", "version": "1.0.0", "description": "", "main": "server.js", "scripts": { "start": "node server.js", "test": "echo \"Error: no test specified\" && exit 1" }, "dependencies": { "express": "4.17.3" }, "author": "", "license..