유틸리티 컨테이너
package.json
파일이 필요함(번거로울 수 있음)유틸리티 컨테이너 구축
자체 이미지 필요
Dockerfile 추가
FROM node:14-alpine
WORKDIR /app
# CMD npm init
$] docker run -it [파일경로] node-util
패키지 이름 입력, 나머진 디폴트 사용
완료되면 package.json
파일이 호스트머신에 생성됨
ENTRYPOINT 활용
docker run
에서 이미지 이름 뒤에 명령을 추가하면 CMD의 명령이 실행됨. docker run
의 이미지 이름 뒤의 명령이 ENTRYPOINT의 명령으로 덮어쓰여짐docker run
의 이미지 이름 뒤의 명령에 추가됨.-it
사용 등... 명령 프롬포트에서 입력해야할 명령어가 많음..Docker Compose 활용
version: "3.8"
services:
npm:
build: ./
stdin_open: true
tty: true
volumes:
- ./:/app
$] docker compose run npm init
run
: 여러 서비스가 있는 경우 서비스 이름으로 단일 서비스를 대상으로 지정할 수 있음run
에는 up과 down이 없음. 대신 컨테이너가 시작되어 작업 수행 후 명령이 완료되면 종료됨run
명령으로는 컨테이너가 자동으로 제거되지 않음--rm
추가해야 컨테이너 종료 후 자동으로 제거됨init
: ENTRYPOINT 다음에 추가되어야 할 명령을 입력한 것