mirror of
https://github.com/headporter81/specialsource-homepage-frontend.git
synced 2026-08-08 15:21:11 +09:00
This commit is contained in:
@@ -0,0 +1,28 @@
|
|||||||
|
name: SpecialSource Frontend CD
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
branches: [ "master" ] # master 브랜치에 코드가 들어오면 배포 가동
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
deploy:
|
||||||
|
runs-on: vue-build-runner # NAS에 심어둔 내 전용 Gitea 러너 호출
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: 1. 소스 코드 가져오기
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: 2. Docker 프론트엔드 이미지 빌드
|
||||||
|
run: docker build -t ss-frontend-image .
|
||||||
|
|
||||||
|
- name: 3. 기존 컨테이너 교체 및 무중단 느낌으로 재시작
|
||||||
|
run: |
|
||||||
|
docker stop ss-frontend-container || true
|
||||||
|
docker rm ss-frontend-container || true
|
||||||
|
|
||||||
|
# 18081 포트로 개방하고, 지정하신 NAS 내부 app 디렉토리에 로그 연동
|
||||||
|
docker run -d \
|
||||||
|
--name ss-frontend-container \
|
||||||
|
-p 18081:80 \
|
||||||
|
-v /volume1/docker/app/specialsource-frontend/logs:/var/log/nginx \
|
||||||
|
ss-frontend-image
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
# 1단계: Node.js 환경에서 Vue 소스 코드를 빌드합니다.
|
||||||
|
FROM node:20-alpine AS build-stage
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package*.json ./
|
||||||
|
RUN npm install
|
||||||
|
COPY . .
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
# 2단계: 빌드된 결과물(HTML/JS)만 가벼운 Nginx 서버로 옮겨 담습니다.
|
||||||
|
FROM nginx:stable-alpine AS production-stage
|
||||||
|
COPY --from=build-stage /app/dist /usr/share/nginx/html
|
||||||
|
|
||||||
|
# ⭐ 핵심: Vue 라우터(SPA) 지원 + 백엔드 API(18080 포트) 자동 연결 프록시 설정
|
||||||
|
RUN echo 'server { \
|
||||||
|
listen 80; \
|
||||||
|
location / { \
|
||||||
|
root /usr/share/nginx/html; \
|
||||||
|
index index.html; \
|
||||||
|
try_files $uri $uri/ /index.html; \
|
||||||
|
} \
|
||||||
|
location /api { \
|
||||||
|
proxy_pass http://192.168.0.215:18080/api; \
|
||||||
|
proxy_set_header Host $host; \
|
||||||
|
proxy_set_header X-Real-IP $remote_addr; \
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; \
|
||||||
|
} \
|
||||||
|
}' > /etc/nginx/conf.d/default.conf
|
||||||
|
|
||||||
|
EXPOSE 80
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
Reference in New Issue
Block a user