-
카테고리
-
세부 분야
데브옵스 · 인프라
-
해결 여부
미해결
리액트 핫로딩 옵션 줘도 동작을 안하네요 ㅠ
22.01.02 19:20 작성 조회수 809
0
ㅠㅠ 잘못된 부분이 있으면 아무나 알려주시면 감사하겠습니다..
밑에 많은 분들께서 올려주신 글 참고해서 해봤는데
docker 실행 옵션에
-e CHOKIDAR_USEPOLLING=true
위 옵션으로 실행해도 안되고
Dockerfile.dev 파일에
ENV CHOKIDAR_USEPOLLING=true
로 설정을 줘도 안되고
docker-compose.yml 파일에
environment: # 리액트 핫로딩 작동 옵션을 true 로 줘야 Volume 기능을 정상적으로 사용할 수 있다.
- CHOKIDAR_USEPOLLING=true
설정을 해줘도 리프래쉬시 화면이 변경되지 않네요...
컨테이너 내부에 접근해서 확인하였을 땐 App.js파일이 정상적으로 바뀌고 있습니다.
무슨문제일까요
답변을 작성해보세요.
0
NoName
질문자2022.01.17
저는 결국 해결하지 못하고 넘어갔습니다.
다른분들이 적어둔 해결방법들 다 해봤는데 안되더라구요 ㅠㅠ
근데 저부분이 중요하다고 느껴지는 부분은 아니라 너무 시간만 오래 잡아먹을 것 같아서
그냥 wsl2 설치해서 실행하니깐 잘 되길래 넘어갔습니다.
지금도 계속 wsl2로 idea 실행시켜서 수업 진행하고있어요
0
NoName
질문자2022.01.02
docker-compose.yml 파일 내용
# 도커 컴포즈 버전
version: "3"
services: # 이곳에 실행하려는 컨테이너들을 정의
react: # 컨테이너 이름
build: # 현 디렉토리에 있는 Dockerfile 사용
context: . # 도커 이미지를 구성하기 위한 파일과 폴더들이 있는 위치
dockerfile: Dockerfile.dev # 도커 파일이 어떤것인지 지정
ports:
- "3000:3000" # 포트맵핑 로컬포트 : 컨테이너 포트
volumes: # 로컬 머신에 있는 파일들 맵핑
- /usr/src/app/node_modules
- ./:/usr/src/app
environment: # 리액트 핫로딩 작동 옵션을 true 로 줘야 Volume 기능을 정상적으로 사용할 수 있다.
- CHOKIDAR_USEPOLLING=true
stdin_open: true # 리액트 앱을 끌 때 필요(버그 수정)
Dockerfile.dev 파일 내용
FROM node:alpine
WORKDIR /usr/src/app
# packages.json을 먼저 복사를 해서 캐싱된 모듈을 사용하게 함으로써
# 빌드 시 불필요한 설치과정을 패스하게 됨
COPY package.json ./
RUN npm install
# COPY [복사 할 파일 경로] [컨테이너내에서 파일이 복사될 경로]
# COPY ./ ./
CMD ["npm","run","start"]
# Mac 에선 상관 없지만
# Window에서 Volume 기능으로 실시간 화면이 변화하는걸 확인하고 싶으면
# 리액트 핫로딩 작동 옵션을 true 로 줘야 Volume 기능을 정상적으로 사용할 수 있다.
# ENV CHOKIDAR_USEPOLLING=TRUE
잘못된 부분 있는지 확인 부탁드리겠습니다.
OS는 window10 pro이고 vsc사용하여 코드 편집, power shell 사용하여 실행 하고 있습니다
답변 2