From d348cfbccb35b72428510d21afb7e94ea3b59d61 Mon Sep 17 00:00:00 2001 From: teddy Date: Mon, 29 Sep 2025 10:52:42 +0700 Subject: [PATCH] update --- .gitlab-ci.yml | 40 ++++++++++++++++++++++++++++++++++++++++ Dockerfile | 20 ++++++++++++++++++++ compose.yml | 14 ++++++++++++++ debug.log | 0 4 files changed, 74 insertions(+) create mode 100644 .gitlab-ci.yml create mode 100644 Dockerfile create mode 100644 compose.yml create mode 100644 debug.log diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..aa659e8 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,40 @@ +# tahapan +stages: + - cleaning + - build_image + - deploy + +# build image on development server +build_image: + stage: build_image + script: + - docker build -t 36.66.3.44:7007/$PROJECT_NAME:$CI_PIPELINE_ID . + - docker push 36.66.3.44:7007/$PROJECT_NAME:$CI_PIPELINE_ID + environment: + only: + - dev + tags: + - runner-internal-his + +# deploy to development server +deploy_development: + stage: deploy + script: + - docker stack deploy --compose-file compose.yml scheduler-app + environment: + only: + - dev + tags: + - runner-internal-his + +# deploy to development server +cleaning_image_and_container: + stage: cleaning + script: + - echo y | docker container prune + - echo y | docker image prune -a + environment: + only: + - dev + tags: + - runner-internal-his diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..93c6687 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,20 @@ +# Gunakan Node.js 22 sebagai base image +FROM node:22-alpine + +# Atur working directory +WORKDIR /app/scheduler-app + +# Salin file package.json dan package-lock.json +COPY package*.json ./ + +# Jalankan npm install untuk menginstall dependensi +RUN npm install + +# Salin seluruh kode aplikasi +COPY . . + +# Ekspos port aplikasi (ubah sesuai konfigurasi aplikasi Anda) +EXPOSE 3000 + +# Perintah default untuk menjalankan aplikasi +CMD ["node", "index.js"] diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..f015bbd --- /dev/null +++ b/compose.yml @@ -0,0 +1,14 @@ +version: '3.8' + +services: + app: + image: 36.66.3.44:7007/$PROJECT_NAME:$CI_PIPELINE_ID + deploy: + replicas : 1 + restart_policy : + condition: on-failure + resources: + limits: + cpus: "0.01" + memory: "50m" + restart: always \ No newline at end of file diff --git a/debug.log b/debug.log new file mode 100644 index 0000000..e69de29