
docker build .
Dockerfile을 기반으로 Docker 이미지를 생성합니다.docker build 명령어는 Docker에게 해당 디렉토리(.)에서 Dockerfile을 찾아 그 지침에 따라 이미지를 빌드하도록 지시합니다.docker run (ID)
(ID)는 앞서 빌드된 Docker 이미지의 ID입니다.docker run 명령어는 해당 이미지를 기반으로 컨테이너를 생성하고, 그 안에서 애플리케이션을 실행합니다.docker run -p 3000:3000 (ID)
-p 3000:3000 옵션은 호스트의 포트 3000을 컨테이너의 포트 3000에 매핑합니다.localhost:3000으로 접근하면 컨테이너 내부에서 실행 중인 애플리케이션에 연결됩니다.docker ps
docker stop (name)
(name)은 컨테이너의 이름 또는 ID입니다.docker ps -a
package.json 설명nodejs-app-starting-setup.zippackage.json 확인하기name: 프로젝트 이름version: 프로젝트 버전dependencies: 프로젝트에서 사용하는 패키지 목록scripts: NPM 명령어로 실행할 수 있는 스크립트 정의package.json에 정의된 의존성 패키지들을 설치하여 애플리케이션이 정상적으로 실행되도록 합니다.npm install
npm install 명령어는 package.json 파일을 읽어 dependencies에 명시된 모든 패키지를 설치합니다.node_modules 디렉토리에 저장됩니다.이미지 빌드하기
docker build .
이미지 실행하기
docker run sha256:dd761a8fbb1c7b7c6f1cb87d65ccd8749adff3b3ab064ab9f9583
docker ps
(open new terminal)
docker stop elegant_elgamal
docker ps
docker ps -a
docker ps로 실행 중인 컨테이너를 확인합니다.docker stop elegant_elgamal로 컨테이너를 중지합니다.docker ps로 실행 중인 컨테이너가 없는지 확인합니다.docker ps -a로 모든 컨테이너 목록을 확인합니다.EXPOSE 명령어에 대한 이해EXPOSE 80의 의미:-p 플래그를 사용하여 포트를 매핑해야 합니다.docker run -p 3000:80 sha256:dd761a8fbb1c7b7c6f1cb87d65ccd8749adff3b3ab064ab9f9583
-p 3000:80 옵션은 호스트의 포트 3000을 컨테이너의 포트 80에 매핑합니다.localhost:3000으로 접속하면 컨테이너 내부의 애플리케이션이 표시됩니다.EXPOSE는 선택 사항:docker run 시 -p 옵션이 필요합니다.EXPOSE를 Dockerfile에 포함하여 문서화하는 것이 좋습니다.abcdefg로 시작한다면:docker run abcdefg
docker run abc
이렇게 해서 주어진 내용과 명령어들에 대해 자세히 설명해 드렸습니다. 이 설명을 통해 Docker를 사용하여 Node.js 애플리케이션을 빌드하고 실행하는 과정을 이해하시는데 도움이 되었기를 바랍니다. 추가로 궁금한 사항이나 도움이 필요한 부분이 있으시면 언제든지 말씀해 주세요!