티스토리 뷰
React로 개발 후 Nignx로 배포 할 경우, Dockerfile의 멀티 스테이지를 이용하면 Docker 이미지 용량을 줄일 수 있다.
를Node.js는 React 앱을 빌드할 때 필요한데, 배포 단계에서는 빌드 후 생성된 결과물만 필요하므로, Node.js가 필요없어진다.
# Step 1: Build (빌드 단계)
FROM node:18 AS builder # Node.js 환경을 builder라는 이름으로 설정
WORKDIR /app # 작업 디렉토리 설정
COPY package*.json ./ # package.json 복사
RUN npm install # 의존성 설치
COPY . . # 소스 코드 복사
RUN npm run build # React 앱 빌드 (build 폴더 생성)
# Step 2: Deploy (배포 단계)
FROM nginx:stable-alpine # Nginx 환경으로 배포
COPY --from=builder /app/build /usr/share/nginx/html # 빌드 결과물만 복사
EXPOSE 80 # Nginx 서버 포트 열기
CMD ["nginx", "-g", "daemon off;"] # Nginx 실행
반응형
'AI > AI 서비스 개발' 카테고리의 다른 글
[AI 서비스 개발] DB 엔진, DB 세션, Redis 클라이언트 (0) | 2025.02.26 |
---|---|
[AI 서비스 개발] 디버깅, 브레이크 포인트, logging (0) | 2025.02.21 |
[AI 서비스 개발] FastAPI 쿼리 파라미터 (0) | 2025.02.20 |
[AI 서비스 개발] Redis 기초 문법(with python) (0) | 2025.02.18 |
[AI 서비스 개발] Redis 다중 키워드 검색(Set & Tag) (1) | 2025.02.17 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- C언어
- 오픽
- 아침운동
- 아침
- 스크랩
- Python
- 실기
- ChatGPT
- 뉴스
- Ai
- IH
- 프로그래머스
- 미라클모닝
- 30분
- 루틴
- 다이어트
- opic
- 운동
- 고득점 Kit
- SQL
- 줄넘기
- 경제
- 빅데이터 분석기사
- 갓생
- 습관
- 영어회화
- llm
- 오블완
- 기초
- 티스토리챌린지
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함