Node.Docker에서 js 항목 시작하기
개요와 구상의 독자
표제의 실현 방법을 해설하다.
Docker에 노드 서버를 만들고 거기에 노드를 만듭니다.js 프로젝트를 시작하는 것은 매우 간단합니다.
Node.js 프로젝트가 npm와yarn에서 관리된다고 가정하십시오.
매우 기본적인 내용이기 때문에 나와 마찬가지로 도커와 npm를 접하기 시작하여 해가 얕은 사람을 대상 독자로 구상하기 시작했다.
제안과 지적이 있다면 누구든지 꼭!
디렉토리 구조
단지 Compose 파일과 프로젝트의 간단한 구성일 뿐입니다.
docker-compose.yml
└─node_prj # Node.jsプロジェクトを配置
docker-compose.준비
docker-compose.yml
version: "3"
services:
node:
image: node:14.17.6 # イメージを指定
container_name: node # nodeサーバーなのでこのように命名
tty: true
environment:
- NODE_ENV=development
volumes:
- ./node_prj:/usr/src/app
ports:
- 3000:3000
working_dir: /usr/src/app
tty
: 기본값은 가짜입니다. 전장에서 실행하는 과정이 없으면 구축 후 컨테이너가 정상적으로 종료됩니다.노드도 상응하기 때문에 이번에는 진짜로 지정한다.environment
: NODE_ENV
는 노드입니다.js의 전역 변수입니다.개발 용도이기 때문에 지정development
.volumes
: 컨테이너의 비de 서버 디렉터리./node_prj
에 로컬 디렉터리/usr/src/app
를 설치합니다.ports
: 컨테이너에서 프로젝트를 수행할 때 3000번 포트를 사용합니다.나는 그것을 현지의 3000번 포트에 놓았다.working_dir
: 용기가 시작된 후에 프로세스에 들어갈 때 지정한 디렉터리에 있습니다.또한 command
영역에서 실행되는 명령을 지정할 때 이것이 시작점입니다.여기.는 Docker Compose의 공식 참고로 벚꽃 인터넷 보도 이해하기 쉽다.
공사 배치
npm에서 프로젝트 관리를 진행하는 전제에서 진행한다.프로젝트 자체는 자신이 준비한 물건을 사용할 수 있다.
이전 기사에서는 React와 Type Script를 가져오는 프로젝트의 환경 구축에 대해 설명했습니다.
→ 설명서에서 React의 선행 환경 구축(전면)
이를 예로 들면 준비된 항목 중
package.json
package.json
프로젝트를 시작하는 데 사용할 npm script선물로
(※ 기사를 참고할 때는 npm script에 유의해야 합니다. 뒤의 시작 부분에서 설명합니다.)
그러면 상기 디렉토리 구조를 참고하여
node_prj
에 프로젝트를 설정합니다.그럼 지금node_prj
바로 아래package.json
가 있을 거예요.이렇게 준비하면 완성된다.
컨테이너 가동 및 공사 가동
docker-compose.yml이 있는 디렉터리에서 다음 명령을 실행합니다.
$ docker-compose up -d # 初回だけ少し時間がかかる
......
Creating node ... done # この表示で起動完了
에 따라 노드 컨테이너가 작동되었다.컨테이너에 들어가는 과정.$ docker exec -it node /bin/bash
root@*********:/usr/src/app\#
# docker-compose.yml内working_dirで指定したディレクトリにいます。
여기에 ls 명령을 입력하면 로컬node_prj
에 배치된 항목도 컨테이너 안에/usr/src/app
에 배치되어 있음을 알 수 있습니다.이것은 volumes
가 파일 마운트를 지정했기 때문입니다.여기서부터 npm를 조금 접한 사람이라면 친절한 일일 것 같아요.
먼저
npm install
패키지를 설치합니다.root@*********:/usr/src/app\# npm install
그렇다면 지금 있는 목록에node_moduls
가 있을 것이다.이렇게 프로젝트의 시작 준비가 다 되었다.package.json에서 정의한 시작 명령을 실행하고 프로젝트를 시작합니다.root@*********:/usr/src/app\# npm run start
# 自前で用意したプロジェクトの場合は、それに合わせたコマンドを実行してください
※ 주의위에서 설명한 문장 항목을 사용할 때 npm script를 고쳐야 합니다.
package.json
내scripts.start
의 스크립트에 host를 지정해야 합니다.스크립트를 다음과 같이 변경하십시오.package.json
"scripts": {
"start": "webpack serve --host 0.0.0.0 --config ./webpack.dev.js --mode development",
...
이번처럼 Docker를 사용하여 프로젝트를 시작할 때 로컬 브라우저에서 원격 컨테이너의 포트에 접근합니다.따라서 컨테이너 안에서 시작할 때 지정되지 않은 경우--host 0.0.0.0
는 외부(로컬 호스트) 연결을 받지 않는다.(※ 프런트엔드 프로젝트인 데다 개발할 때만 서버를 만들 수 있다는 전제 조건으로 지정
0.0.0.0
했지만, 원래는 모든 외부 네트워크에서 통신을 받을 수 있는 위험 대체품)그러면 마지막으로 로컬 호스트의 브라우저에서 연결을 확인
http://localhost:3000/
(자신이 준비하면 그 주소)하면 끝납니다!일하고 나서.
ctrl+C
프로젝트 중지exit
용기에서 꺼내기docker-compose down
용기 정지총결산
Docker Compose에서 Node 서버를 구축한 후 컨테이너에 npm install 프로젝트를 시작하는 것은 매우 간단합니다.
여러 작업자가 있는 상황에서 노드.나는 각자 js를 특별히 설치할 필요가 없다고 생각한다. 버전이 다르기 때문에 고장이 발생하는 것을 방지할 수 있다는 점에서 약속에 서 있을 수 있다.
Reference
이 문제에 관하여(Node.Docker에서 js 항목 시작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/nishiharu/articles/9e6f0f488310ec텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)