From 4a2e2adf6b8579b78e9c666833b528837f5ac99e Mon Sep 17 00:00:00 2001 From: AmirReza Jamali Date: Tue, 9 Sep 2025 11:45:37 +0330 Subject: [PATCH 1/2] Add: drone and docker files --- .drone.yml | 40 ++++++++++++++++++++++++++++++++++++++++ DockerFile | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) create mode 100644 .drone.yml create mode 100644 DockerFile diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..79ffa16 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,40 @@ +################################################################################ +# web +################################################################################ +kind: pipeline +type: docker +name: (admin Panel) build form and push to artifactory + +steps: + - name: tag + image: alpine/git:2.40.1 + environment: + GOOS: linux + GOARCH: amd64 + CGO_ENABLED: 0 + settings: + debug: true + commands: + - APP_VERSION=$(git rev-list HEAD --count --no-merges)-$DRONE_BRANCH + - echo "APP Version tags $APP_VERSION" + - echo -n "$APP_VERSION" >> .tags + + - name: build panel + image: plugins/docker + settings: + # build_args: + # - BUILD_APP=scraper + username: cicd + password: + from_secret: REGISTRY_PASSWORD + # dockerfile: Dockerfile-drone + repo: artifactory.ravanertebat.ir/tm/admin_panel + registry: artifactory.ravanertebat.ir + +node: + tag: aecde-docker-runner +trigger: + branch: + - dev + event: + - custom diff --git a/DockerFile b/DockerFile new file mode 100644 index 0000000..80c1bda --- /dev/null +++ b/DockerFile @@ -0,0 +1,34 @@ +FROM node:18.20.8 AS builder + +WORKDIR /app +# RUN apk add --no-cache libc6-compat + + +COPY package*.json ./ +RUN npm install + +RUN npm ci +RUN npm install --save-dev typescript @types/react @types/node + +COPY . . + +RUN npm run build + +#--- + +FROM node:18.20.8 AS runner + +WORKDIR /app + + +COPY package*.json ./ +RUN npm ci --omit=dev + +COPY --from=builder /app/.next ./.next +COPY --from=builder /app/public ./public +COPY --from=builder /app/node_modules ./node_modules +COPY --from=builder /app/package*.json ./ + +EXPOSE 3000 + +CMD ["npm", "start"] From d73a64fe52deb9a3a37c2e42f5466590863f80aa Mon Sep 17 00:00:00 2001 From: AmirReza Jamali Date: Tue, 9 Sep 2025 11:49:41 +0330 Subject: [PATCH 2/2] Fix: node version & install packages only once --- DockerFile | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/DockerFile b/DockerFile index 80c1bda..c31644e 100644 --- a/DockerFile +++ b/DockerFile @@ -1,4 +1,4 @@ -FROM node:18.20.8 AS builder +FROM node:20.16.0 AS builder WORKDIR /app # RUN apk add --no-cache libc6-compat @@ -7,8 +7,6 @@ WORKDIR /app COPY package*.json ./ RUN npm install -RUN npm ci -RUN npm install --save-dev typescript @types/react @types/node COPY . . @@ -16,7 +14,7 @@ RUN npm run build #--- -FROM node:18.20.8 AS runner +FROM node:20.16.0 AS runner WORKDIR /app