docker 환경에서 watchman을 사용하는 방법

2409 단어 Dockerwatchmantech
워치맨을 쓸 수 있는 Docker file을 docker에 겨우 적어놨는데 결국 소용이 없어 여기서 부양하고 있다.

배경.


json 파일을 감시합니다. 변경될 때마다 js로 쓴 스크립트 파일을 실행하려고 합니다.

Docker file의 내용


FROM node:14-buster-slim

RUN apt-get update -y
RUN apt-get install -y git libssl-dev autoconf automake libtool pkg-config build-essential

WORKDIR /lib
RUN git clone https://github.com/facebook/watchman.git -b v4.9.0 --depth 1
WORKDIR /lib/watchman
RUN ls -alF
RUN ./autogen.sh
RUN ./configure --disable-dependency-tracking --enable-lenient
RUN make
RUN make install 
RUN mkdir /app
공식 문서에 따라 설치합니다.
mac는 홈brew로 간단하게 들어갈 수 있지만 linux는 귀찮아요.
(참고로 너무 게을러서 한순간에 docker에 홈brew를 넣고 싶은데 힘줄이 안 좋아서 추천하지 않아요)
공식 문서에 따라 삽입libssl-dev autoconf automake libtool하지만 이 작업만으로는 실행할 수 없습니다.
구축하기 위해서는 g++와make가 필요하기 때문에 추가build-essential합니다.
또한 이렇게 하면 C의 컴파일에 의해 찢어지기 때문에 옵션을 추가해야 한다.--disable-dependency-tracking --enable-lenient참고 문장
이렇게 하면 명령watchman을 통해 시작할 수 있다.

왜 안 써요?


많이 만졌는데 결국inotifywait가 더 간단해졌어요.
다음 명령은 비슷할 수 있다.
$ apt install inotify-tools
$ while inotifywait -e modify -r /app; do node index.js; done

좋은 웹페이지 즐겨찾기