update deploy.yaml
This commit is contained in:
@@ -11,8 +11,10 @@ jobs:
|
|||||||
|
|
||||||
env:
|
env:
|
||||||
DANAK_SERVER: "https://captain.dev.danakcorp.com"
|
DANAK_SERVER: "https://captain.dev.danakcorp.com"
|
||||||
APP_TOKEN: 111ac60c637716478be8ab8b888fd20baba808a10b0fc0c18bf788766883ec9e
|
APP_TOKEN: 230cbe758f711c2b12099fce48ef8d4f2212ac6dc89cb300e92a9b8a45133669
|
||||||
APP_NAME: e-commerce-front
|
APP_NAME: shop
|
||||||
|
# APP_TOKEN: 111ac60c637716478be8ab8b888fd20baba808a10b0fc0c18bf788766883ec9e
|
||||||
|
# APP_NAME: e-commerce-front
|
||||||
GITHUB_TOKEN: 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
|
GITHUB_TOKEN: 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
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
|||||||
+74
-10
@@ -1,29 +1,53 @@
|
|||||||
|
# ------------------------
|
||||||
|
# Base image
|
||||||
|
# ------------------------
|
||||||
FROM node:22-alpine AS base
|
FROM node:22-alpine AS base
|
||||||
|
|
||||||
RUN apk add --no-cache tzdata && \
|
RUN apk add --no-cache tzdata \
|
||||||
cp /usr/share/zoneinfo/Asia/Tehran /etc/localtime && \
|
&& cp /usr/share/zoneinfo/Asia/Tehran /etc/localtime \
|
||||||
echo "Asia/Tehran" > /etc/timezone
|
&& echo "Asia/Tehran" > /etc/timezone
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
|
# ------------------------
|
||||||
|
# Dependencies stage
|
||||||
|
# ------------------------
|
||||||
FROM base AS deps
|
FROM base AS deps
|
||||||
|
|
||||||
RUN apk add --no-cache libc6-compat git
|
RUN apk add --no-cache libc6-compat git
|
||||||
|
|
||||||
COPY package*.json ./
|
COPY package*.json ./
|
||||||
RUN npm ci --only=production --ignore-scripts
|
|
||||||
|
|
||||||
|
RUN npm ci
|
||||||
|
|
||||||
|
# ------------------------
|
||||||
|
# Builder stage
|
||||||
|
# ------------------------
|
||||||
FROM base AS builder
|
FROM base AS builder
|
||||||
WORKDIR /build
|
|
||||||
COPY --from=deps /app/node_modules ./node_modules
|
|
||||||
COPY . .
|
|
||||||
RUN npm run build && npm ci --only=production --ignore-scripts
|
|
||||||
|
|
||||||
|
WORKDIR /build
|
||||||
|
|
||||||
|
COPY --from=deps /app/node_modules ./node_modules
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
# Build پروژه Next.js
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
# ------------------------
|
||||||
|
# Runner stage (production)
|
||||||
|
# ------------------------
|
||||||
FROM base AS runner
|
FROM base AS runner
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
ENV NODE_ENV=production
|
ENV NODE_ENV=production
|
||||||
ENV NEXT_TELEMETRY_DISABLED=1
|
ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
|
ENV PORT=3000
|
||||||
|
ENV HOSTNAME="0.0.0.0"
|
||||||
|
|
||||||
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
|
RUN addgroup -S appgroup && adduser -S appuser -G appgroup
|
||||||
|
|
||||||
RUN mkdir .next && chown appuser:appgroup .next
|
RUN mkdir .next && chown appuser:appgroup .next
|
||||||
|
|
||||||
COPY --from=builder --chown=appuser:appgroup /build/.next/standalone ./
|
COPY --from=builder --chown=appuser:appgroup /build/.next/standalone ./
|
||||||
@@ -34,7 +58,47 @@ COPY --from=builder --chown=appuser:appgroup /build/package.json ./package.json
|
|||||||
USER appuser
|
USER appuser
|
||||||
|
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
ENV PORT=3000
|
|
||||||
ENV HOSTNAME="0.0.0.0"
|
|
||||||
|
|
||||||
CMD ["node", "server.js"]
|
CMD ["node", "server.js"]
|
||||||
|
|
||||||
|
|
||||||
|
# FROM node:22-alpine AS base
|
||||||
|
|
||||||
|
# RUN apk add --no-cache tzdata && \
|
||||||
|
# cp /usr/share/zoneinfo/Asia/Tehran /etc/localtime && \
|
||||||
|
# echo "Asia/Tehran" > /etc/timezone
|
||||||
|
|
||||||
|
# WORKDIR /app
|
||||||
|
|
||||||
|
# FROM base AS deps
|
||||||
|
# RUN apk add --no-cache libc6-compat git
|
||||||
|
# COPY package*.json ./
|
||||||
|
# RUN npm ci --only=production --ignore-scripts
|
||||||
|
|
||||||
|
# FROM base AS builder
|
||||||
|
# WORKDIR /build
|
||||||
|
# COPY --from=deps /app/node_modules ./node_modules
|
||||||
|
# COPY . .
|
||||||
|
# RUN npm run build && npm ci --only=production --ignore-scripts
|
||||||
|
|
||||||
|
# FROM base AS runner
|
||||||
|
# WORKDIR /app
|
||||||
|
|
||||||
|
# ENV NODE_ENV=production
|
||||||
|
# ENV NEXT_TELEMETRY_DISABLED=1
|
||||||
|
|
||||||
|
# RUN addgroup -S appgroup && adduser -S appuser -G appgroup
|
||||||
|
# RUN mkdir .next && chown appuser:appgroup .next
|
||||||
|
|
||||||
|
# COPY --from=builder --chown=appuser:appgroup /build/.next/standalone ./
|
||||||
|
# COPY --from=builder --chown=appuser:appgroup /build/.next/static ./.next/static
|
||||||
|
# COPY --from=builder --chown=appuser:appgroup /build/public ./public
|
||||||
|
# COPY --from=builder --chown=appuser:appgroup /build/package.json ./package.json
|
||||||
|
|
||||||
|
# USER appuser
|
||||||
|
|
||||||
|
# EXPOSE 3000
|
||||||
|
# ENV PORT=3000
|
||||||
|
# ENV HOSTNAME="0.0.0.0"
|
||||||
|
|
||||||
|
# CMD ["node", "server.js"]
|
||||||
Reference in New Issue
Block a user