언어 및 프레임워크 가이드
Node.js 컨테이너 앱 실행 가이드
7 분
docker는 애플리케이션을 컨테이너에 패키징하고 실행할 수 있게 해주는 기술입니다 back4app 컨테이너는 docker 기술을 기반으로 하며, docker 컨테이너를 사용하여 애플리케이션을 격리하고 실행합니다 이는 성능 향상, 보안 강화, 배포 및 확장의 간소화와 같은 여러 가지 이점을 제공합니다 back4app 컨테이너에서 node js 애플리케이션을 실행하려면 docker 이미지를 빌드하기 위한 지침이 포함된 dockerfile을 생성해야 합니다 node js 애플리케이션을 위한 dockerfile을 만드는 방법에 대한 단계별 가이드는 다음과 같습니다 언제든지 back4app 컨테이너에서 샘플로 작동하는 nodejs 프로젝트를 확인하고 싶다면 다음으로 가세요 https //github com/templates back4app/containers python flask sample 1 기본 이미지 선택 첫 번째 단계는 dockerfile을 위한 기본 이미지를 선택하는 것입니다 node js 애플리케이션의 경우 docker hub에서 공식 node js 이미지를 사용할 수 있습니다 이미지 이름에 태그를 지정하여 특정 버전의 node js를 선택할 수 있습니다 예를 들어, node js 버전 14를 사용하려면 dockerfile의 첫 번째 줄은 다음과 같아야 합니다 from node 14 2 작업 디렉토리 설정 다음으로, 애플리케이션 파일이 위치할 컨테이너의 작업 디렉토리를 설정해야 합니다 workdir 명령어를 사용하여 작업 디렉토리를 설정할 수 있습니다 예를 들어 workdir /app 3 애플리케이션 파일 복사 이제 애플리케이션 파일을 작업 디렉토리로 복사해야 합니다 copy 명령어를 사용하여 파일을 복사할 수 있습니다 예를 들어 copy /app 4 의존성 설치 애플리케이션을 실행하려면 의존성을 설치해야 합니다 npm install 명령어를 사용하여 의존성을 설치할 수 있습니다 run 명령어를 사용하여 dockerfile에서 명령을 실행할 수 있습니다 예를 들어 run npm install 5 환경 변수 설정 애플리케이션에 환경 변수가 필요하면, env 명령어를 사용하여 dockerfile에서 설정할 수 있습니다 예를 들어 env port 8080 6 포트 노출 컨테이너 외부에서 애플리케이션에 접근할 수 있도록 하려면, 애플리케이션이 수신 대기 중인 포트를 노출해야 합니다 expose 명령어를 사용하여 포트를 노출할 수 있습니다 예를 들어 expose 8080 7 진입점 정의 마지막 단계는 컨테이너의 진입점을 정의하는 것입니다 이는 컨테이너가 시작될 때 실행될 명령입니다 node js 애플리케이션의 경우, npm start 명령어를 진입점으로 사용할 수 있습니다 예를 들어 cmd \["npm", "start"] 여기 간단한 node js 애플리케이션을 위한 전체 dockerfile이 있습니다 bashcopy code from node 14 workdir /app copy /app run npm install env port 8080 expose 8080 cmd \["npm", "start"]#sample dockerfile for nodejs apps from node 16 env node env=production workdir /app copy \["package json", "package lock json ", " /"] run npm install production copy expose 8080 cmd \[ "node", "index js" ] dockerfile을 생성한 후, 이를 프로젝트 루트 또는 원하는 폴더에 붙여넣고(앱 설정의 루트 매개변수에서 지정) 애플리케이션을 생성하거나 재배포해야 합니다 back4app은 이 파일을 기반으로 docker 이미지를 생성하고 이 이미지를 사용하여 컨테이너를 생성합니다 이렇게 하면 node js 애플리케이션을 back4app 컨테이너에서 실행할 수 있습니다