From d055d845413ca19888bfdfcd37cef77e90584ae9 Mon Sep 17 00:00:00 2001 From: Anang Yusman Date: Thu, 19 Feb 2026 13:35:31 +0800 Subject: [PATCH] update qudo --- .gitlab-ci.yml | 30 ++++++++++++++++ Dockerfile | 36 +++++++++++++++++++ app/news-services/page.tsx | 5 ++- .../landing-page/headers-news-services.tsx | 1 - next.config.ts | 21 ++++++++--- 5 files changed, 87 insertions(+), 6 deletions(-) create mode 100644 .gitlab-ci.yml create mode 100644 Dockerfile diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..d9f0b15 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,30 @@ +stages: + - build + - deploy + +build-dev: + stage: build + when: on_success + only: + - main + image: + name: docker:25.0.3-cli + services: + - name: docker:25.0.3-dind + command: ["--insecure-registry=38.47.185.86:8900"] + script: + - docker logout + - docker login -u $DEPLOY_USERNAME -p $DEPLOY_TOKEN 38.47.185.86:8900 + - docker build -t 38.47.185.86:8900/medols/web-qudo:dev . + - docker push 38.47.185.86:8900/medols/web-qudo:dev + +auto-deploy: + stage: deploy + when: on_success + only: + - main + image: curlimages/curl:latest + services: + - docker:dind + script: + - curl --user admin:$JENKINS_PWD http://38.47.185.86:8080/job/auto-deploy-qudo/build?token=autodeploymedols diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..2b874db --- /dev/null +++ b/Dockerfile @@ -0,0 +1,36 @@ +# Menggunakan image Node.js yang lebih ringan +FROM node:23.5.0-alpine + +# Mengatur port +ENV PORT 3000 + +# Install pnpm secara global +RUN npm install -g pnpm + +# Membuat direktori aplikasi dan mengatur sebagai working directory +WORKDIR /usr/src/app + +# Menyalin file penting terlebih dahulu untuk caching +COPY package.json ./ + +# Menyalin direktori ckeditor5 jika diperlukan +COPY vendor/ckeditor5 ./vendor/ckeditor5 + +# Menyalin env +COPY .env .env + +# Install dependencies +RUN pnpm install +# RUN pnpm install --frozen-lockfile + +# Menyalin source code aplikasi +COPY . . + +# Build aplikasi +RUN NODE_OPTIONS="--max-old-space-size=4096" pnpm next build + +# Expose port untuk server +EXPOSE 3000 + +# Perintah untuk menjalankan aplikasi +CMD ["pnpm", "run", "start"] \ No newline at end of file diff --git a/app/news-services/page.tsx b/app/news-services/page.tsx index a33fd49..758747d 100644 --- a/app/news-services/page.tsx +++ b/app/news-services/page.tsx @@ -5,12 +5,15 @@ import ContentLatest from "@/components/landing-page/content-latest"; import ContentPopular from "@/components/landing-page/content-popular"; import ContentCategory from "@/components/landing-page/category-content"; import FloatingMenuNews from "@/components/landing-page/floating-news"; +import { Suspense } from "react"; export default function NewsAndServicesPage() { return (
- + + + diff --git a/components/landing-page/headers-news-services.tsx b/components/landing-page/headers-news-services.tsx index e718c80..33b12b5 100644 --- a/components/landing-page/headers-news-services.tsx +++ b/components/landing-page/headers-news-services.tsx @@ -1,5 +1,4 @@ "use client"; - import Image from "next/image"; import { motion, AnimatePresence } from "framer-motion"; import { X, ChevronLeft, ChevronRight } from "lucide-react"; diff --git a/next.config.ts b/next.config.ts index e9ffa30..2c7d423 100644 --- a/next.config.ts +++ b/next.config.ts @@ -1,7 +1,20 @@ -import type { NextConfig } from "next"; - -const nextConfig: NextConfig = { - /* config options here */ +/** @type {import('next').NextConfig} */ +const nextConfig = { + images: { + domains: [ + "mikulnews.com", + "dev.mikulnews.com", + "jaecoocihampelasbdg.com", + "dev.arahnegeri.com", + "qudo.id", + ], + }, + eslint: { + ignoreDuringBuilds: true, + }, + experimental: { + optimizePackageImports: ["@ckeditor/ckeditor5-react", "react-apexcharts"], + }, }; export default nextConfig;