---
title: "파이프라인 개발 간소화 핵심! GitLab CI/CD 컴포넌트, 카탈로그 잘 써먹기"
description: "CI/CD 컴포넌트는 GitLab CI/CD 템플릿의 차세대로, 재사용 가능한 단일 파이프라인 구성 단위입니다. CI/CD 카탈로그는 공개된 CI/CD 컴포넌트가 있는 프로젝트 목록입니다. GitLab에서 CI/CD 컴포넌트와 CI/CD 카탈로그를 활용하면 파이프라인 개발을 간소화할 수 있습니다. 이 글은 두 기능의 사용 방법을 다뤘습니다."
url: https://insight.infograb.net/blog/2024/09/03/gitlab-cicd-catalog/
source: content/generated/blog/2024-09-03-gitlab-cicd-catalog.md
---

안녕하세요. 인포그랩에서 DevOps 엔지니어로 근무하는 John입니다. 여러분은 GitLab으로 CI/CD 파이프라인을 구성할 때, 재사용성을 높이기 위해 어떻게 하시나요?  저는 스크립트가 정의된 CI/CD 템플릿 파일을 생성하고 include하는 방식을 사용했습니다. 이 방식을 활용하면 프로젝트의 `.gitlab-ci.yml` 파일에 CI/CD 템플릿을 쉽게 포함할 수 있죠.

그러나 이 방식은 CI/CD 파이프라인 재사용성을 높이는 데 항상 도움이 되는 건 아니었습니다. 예를 들어, 다른 사용자가 생성한 CI/CD 템플릿을 사용할 때, 템플릿의 상세 내용을 모를 수 있는데요. 즉, CI/CD 템플릿을 사용하기 위해 ‘어떤 변수를 추가하고, 추가 스크립트를 어떻게 작성할지’ 파악하지 못할 때가 있죠. 그렇다 보니 CI/CD 파이프라인 재사용성이 떨어지기도 했습니다.

이제 GitLab CI/CD 컴포넌트(Components)와 CI/CD 카탈로그(Catalog) 기능으로 이 한계를 보완할 수 있는데요. CI/CD 컴포넌트는 GitLab CI/CD 템플릿의 차세대로, 재사용 가능한 단일 파이프라인 구성 단위입니다. CI/CD 카탈로그는 공개된 CI/CD 컴포넌트가 있는 프로젝트 목록인데요. GitLab에서는 CI/CD 컴포넌트를 CI/CD 카탈로그에 게시할 수 있고요. CI/CD 카탈로그에서 공개된 CI/CD 컴포넌트를 검색해 이용할 수 있습니다.

GitLab은 두 기능으로 CI/CD 컴포넌트 활용법, 사용할 수 있는 Inputs 변수 리스트, 예제 스크립트 등을 쉽게 파악하도록 지원합니다. 이러한 정보를 토대로 CI/CD 컴포넌트를 잘 사용해 CI/CD 파이프라인 구성을 유연하고 동적으로 만들 수 있고요. 나아가 CI/CD 파이프라인 재사용성도 높일 수 있습니다. CI/CD 컴포넌트와 CI/CD 카탈로그는 GitLab 17.0부터 GA(Generally Available) 버전으로 이용할 수 있는데요. 이 글에서는 두 기능의 사용 방법을 알아보겠습니다.

## CI/CD 컴포넌트란?

CI/CD 컴포넌트는 재사용 가능한 단일 파이프라인 구성 단위입니다. CI/CD 컴포넌트로 더 큰 파이프라인의 작은 부분을 만들거나, 전체 파이프라인 구성(configuration)을 구성(compose)할 수 있는데요. GitLab 시니어 프로덕트 매니저인 Dov Hershkovitch는 GitLab 블로그의 ‘CI/CD Catalog goes GA: No more building pipelines from scratch’라는 글에서 “CI/CD 컴포넌트를 CI/CD 워크플로의 레고 조각으로 생각하라”며 “이를 사용하면, 매번 처음부터 시작할 필요 없이 파이프라인을 더 효율적으로 조립할 수 있다”라고 설명합니다.

CI/CD 컴포넌트에는 다음 특징이 있습니다.

- CI/CD 컴포넌트를 CI/CD 카탈로그에 게시해 다른 사용자도 이용할 수 있습니다.
- CI/CD 컴포넌트는 버전을 지정해 릴리즈하고 사용할 수 있습니다.
- 동일한 프로젝트에 여러 CI/CD 컴포넌트를 정의할 수 있습니다.
- CI/CD 컴포넌트는 동적인 동작을 위해 입력 매개변수로 구성할 수 있습니다.

## CI/CD 컴포넌트 생성·사용법

GitLab에서 CI/CD 컴포넌트 프로젝트와 CI/CD 컴포넌트를 생성하고, 컴포넌트를 사용하는 방법을 알아보겠습니다. 

### 프로젝트, 컴포넌트 생성하기

CI/CD 컴포넌트 프로젝트는 하나 이상 CI/CD 컴포넌트를 호스팅하는 리포지터리가 있는 GitLab 프로젝트입니다. 이 프로젝트와 CI/CD 컴포넌트 생성 방법은 다음과 같습니다.

1. GitLab에서 **New Project > Create blank project**를 클릭해 GitLab 프로젝트 생성 페이지로 이동합니다.
2. 프로젝트 이름, 기본 README 파일 옵션 등을 확인합니다. 그다음, 아래에 **Create project** 버튼을 눌러 CI/CD 컴포넌트 프로젝트를 생성합니다.

    ![GitLab 프로젝트 생성 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-01.png)
    *GitLab 프로젝트 생성 화면*

3. 생성한 CI/CD 컴포넌트 프로젝트를 사용하려면, 특정 형식에 맞춰 폴더와 파일을 생성해야 합니다. 프로젝트의 디렉터리 구조는 다음과 같게 합니다.

    ```yaml
    ├── templates/
    │   └── test-component.yml
    ├── LICENSE.md
    ├── README.md
    └── .gitlab-ci.yml
    ```

    - `templates`: 모든 CI/CD 컴포넌트 구성을 포함하는 최상위 디렉터리입니다. 이 디렉터리에 CI/CD 컴포넌트를 정의합니다. CI/CD 컴포넌트는 yml 확장자 파일로 생성합니다.
    - `.gitlab-ci.yml`: CI/CD 컴포넌트를 테스트하고 CI/CD 카탈로그로 새 버전을 릴리즈합니다.
    - 한편, 프로젝트에 여러 파일로 구성된 CI/CD 컴포넌트가 포함될 때는 아래 구조를 취합니다.

        ```yaml
        ├── templates/
        │   ├── test-component.yml
        │   └── test-component/
        │       ├── template.yml
        │       ├── Dockerfile
        │       └── test.sh
        ├── LICENSE.md
        ├── README.md
        └── .gitlab-ci.yml
        ```

4. `test-component.yml` 파일을 수정해 다음과 같이 CI/CD 컴포넌트를 생성합니다.

    ```yaml
    spec:
      inputs:
        stage:
          default: test
    ---
    component-job:
      script: echo job 1
      stage: $[[ inputs.stage ]]
    ```

    - `spec`: CI/CD 컴포넌트 사양을 정의합니다. 여기에는 입력 매개변수와 그 기본값이 포함됩니다.
    - `inputs`: CI/CD 컴포넌트가 받는 입력 매개변수를 정의합니다. 이 예시에서는 `stage`라는 매개변수가 정의됐습니다.
        - `stage`: 이 매개변수는 job이 실행될 CI/CD 파이프라인 스테이지를 지정합니다. 기본값은 `test`로 설정됐습니다. 사용자는 필요에 따라 이 값을 다른 스테이지로 변경할 수 있습니다.
    - `component-job`: 실제로 실행될 job을 정의합니다.
        - `script`: job이 수행할 명령어를 지정합니다. 이 예시에서는 `echo job 1` 명령어를 실행해 "job 1"이라는 메시지를 출력합니다.
        - `stage`: job이 실행될 CI/CD 파이프라인 스테이지를 지정합니다. `$[[ inputs.stage ]]` 구문을 사용해 `inputs`에서 정의된 `stage` 매개변수의 값을 참고합니다. 이는 사용자가 CI/CD 컴포넌트를 사용할 때 `stage` 값을 지정해 job을 원하는 스테이지에서 유연하게 실행하도록 합니다.

### 컴포넌트 사용하기

CI/CD 컴포넌트를 사용하려면 `include: component` 키워드로 파이프라인에 이를 포함합니다. 또 `inputs` 키워드를 사용해 컴포넌트가 받는 매개변수를 주입합니다.

CI/CD 컴포넌트는 `<gitlab-domain>/<my-group/my-project>/<component-name>@<version>` 형식으로 지정해 사용할 수 있습니다. 이 글에서는 Input 키워드로 `build`라는 매개변수를 활용한 CI/CD 컴포넌트 사용 방법을 소개합니다.

1. GitLab에서 CI/CD 컴포넌트를 사용하려는 프로젝트의 `.gitlab-ci.yml` 파일을 아래 예시에 따라 수정합니다.

    ```yaml
    include:
      - component: 
    $CI_SERVER_FQDN
    /infograb/personal/john/catalog/test-project/test-component@main
        inputs:
          stage: build
    ```

2. 다음과 같이 **Commit changes** 버튼을 눌러 저장합니다.

    ![GitLab .gitlab-ci.yml 파일 수정 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-02.png)
    *GitLab .gitlab-ci.yml 파일 수정 화면*

3. CI/CD 컴포넌트의 job이 Inputs 키워드로 입력된 **build** 스테이지에서 정상적으로 실행된 걸 아래와 같이 확인할 수 있습니다. 이로써 CI/CD 컴포넌트 사용 프로세스가 마무리됐습니다.

    ![GitLab CI/CD 컴포넌트 job의 build 스테이지 실행 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-03.png)
    *GitLab CI/CD 컴포넌트 job의 build 스테이지 실행 화면*

## CI/CD 카탈로그란?

CI/CD 카탈로그는 공개된 CI/CD 컴포넌트가 있는 프로젝트 목록입니다. 누구든지 CI/CD 컴포넌트 프로젝트를 만들어 CI/CD 카탈로그에 추가할 수 있죠. 또 기존 프로젝트에 기여해 CI/CD 컴포넌트를 개선할 수 있습니다. GitLab 시니어 프로덕트 매니저인 Dov Hershkovitch는 GitLab 블로그의 ‘CI/CD Catalog goes GA: No more building pipelines from scratch’라는 글에서 “CI/CD 카탈로그는 모든 GitLab 사용자가 CI/CD 컴포넌트를 쉽게 찾고, 재사용하며, 기여하도록 지원한다”며 “이는 DevSecOps 워크플로에 원활하게 통합할 수 있는 사전 구축된 CI/CD 컴포넌트에 접근해 파이프라인 구성을 만들 때, 협업과 효율을 향상한다”라고 설명합니다.

CI/CD 카탈로그에서 CI/CD 컴포넌트 가시성은 컴포넌트 소스 프로젝트의 가시성 설정을 따릅니다. 상세 내용은 다음과 같습니다.

- **비공개(Private):** 소스 컴포넌트 프로젝트에 최소한 Guest 역할이 할당된 사용자에게만 표시됩니다.
- **내부(Internal):** GitLab 인스턴스에 로그인한 사용자에게만 표시됩니다.
- **공개(Public)**: GitLab 인스턴스에 액세스 권한이 있는 모든 사람에게 표시됩니다.

GitLab CI/CD 카탈로그는 다음 경로로 볼 수 있습니다.

1. GitLab 왼쪽 사이드바에서 **Search or go to**를 클릭한 다음, 아래와 같이 **Explore**를 누릅니다.

    ![GitLab에서 Search or go to 클릭 시 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-04.png)
    *GitLab에서 Search or go to 클릭 시 화면*

2. 왼쪽 사이드바에서 **CI/CD Catalog**를 클릭하면, 공식 카탈로그 프로젝트 또는 다른 사용자들이 배포한 카탈로그 프로젝트를 볼 수 있습니다.

    ![GitLab CI/CD 카탈로그 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-05.png)
    *GitLab CI/CD 카탈로그 화면*

## 컴포넌트 프로젝트, CI/CD 카탈로그 게시법

CI/CD 카탈로그에 CI/CD 컴포넌트 프로젝트를 게시하는 방법을 살펴보겠습니다.

### 컴포넌트 프로젝트, 카탈로그 프로젝트로 설정하기

CI/CD 카탈로그에 CI/CD 컴포넌트 프로젝트의 게시된 버전을 표시하려면, 해당 프로젝트를 카탈로그 프로젝트로 설정해야 합니다. 이때 프로젝트에 Owner 역할이 있어야 합니다. 카탈로그 프로젝트 설정 순서는 다음과 같습니다.

1. GitLab 왼쪽 사이드바에서 **Search or go to**를 클릭합니다. 카탈로그 프로젝트로 설정할 CI/CD 컴포넌트 프로젝트를 아래와 같이 검색한 다음, 해당 프로젝트로 이동합니다.

    ![GitLab 프로젝트 검색 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-06.png)
    *GitLab 프로젝트 검색 화면*

2. GitLab 왼쪽 사이드바에서 **Settings > General**을 클릭합니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-07.png)
    *GitLab CI/CD 컴포넌트 프로젝트 화면*

3. **Visibility, project features, permissions** 옆에 **Expand** 버튼을 누릅니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 설정 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-08.png)
    *GitLab CI/CD 컴포넌트 프로젝트 설정 화면*

4. 아래와 같이 **CI/CD Catalog project** 토글을 클릭해 기능을 활성화합니다. **Save Changes** 버튼을 눌러 변경 사항을 저장합니다.

    ![GitLab CI/CD Catalog project 기능 활성화 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-09.png)
    *GitLab CI/CD Catalog project 기능 활성화 화면*

5. 이제 **CI/CD Catalog project** 배지가 프로젝트 이름 옆에 생긴 걸 확인할 수 있습니다.

    ![CI/CD Catalog project 배지가 추가된 GitLab CI/CD 컴포넌트 프로젝트 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-10.png)
    *CI/CD Catalog project 배지가 추가된 GitLab CI/CD 컴포넌트 프로젝트 화면*

    :::note 참고

    지금 상태에서 배지를 클릭하면 404 오류 페이지가 뜰 수 있습니다. 이는 해당 프로젝트가 CI/CD 카탈로그에 릴리즈되지 않아 발생하는 오류입니다.

    이때 `.gitlab-ci.yml` 파일에 다음 스크립트를 추가해 Release Tag를 업데이트할 때마다 해당 프로젝트가 CI/CD 카탈로그에 릴리즈되도록 설정합니다.

    ```yaml
    create-release:
      stage: deploy
      image: registry.gitlab.com/gitlab-org/release-cli:latest
      script: echo "Creating release $CI_COMMIT_TAG"
      rules:
        - if: $CI_COMMIT_TAG
      release:
        tag_name: $CI_COMMIT_TAG
        description: "Release $CI_COMMIT_TAG of components in $CI_PROJECT_PATH"
    ```

    파이프라인이 정상적으로 작동하려면 다음 요소를 지켜야 합니다.
    - 카탈로그 프로젝트로 설정돼야 함.
    - 프로젝트 설명이 정의돼야 함. 
    - 디렉터리 최상단에 README.md 파일이 있어야 함.
    - templates 디렉터리에 적어도 하나의 CI/CD 컴포넌트가 있어야 함.

    :::

### 컴포넌트 프로젝트, CI/CD 카탈로그에 게시하기

이제 태그를 생성해 CI/CD 카탈로그에 CI/CD 컴포넌트 프로젝트를 게시하겠습니다.

1. GitLab 왼쪽 사이드바에서 **Code > Tags**를 클릭합니다.

    ![카탈로그 프로젝트로 설정한 GitLab CI/CD 컴포넌트 프로젝트 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-11.png)
    *카탈로그 프로젝트로 설정한 GitLab CI/CD 컴포넌트 프로젝트 화면*

2. **New tag** 버튼을 눌러 태그 생성 페이지로 이동합니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 Tags 페이지 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-12.png)
    *GitLab CI/CD 컴포넌트 프로젝트 Tags 페이지 화면*

3. 태그 이름, 브랜치, 메시지를 작성하고 **Create tag** 버튼을 클릭해 태그를 생성합니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 태그 생성 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-13.png)
    *GitLab CI/CD 컴포넌트 프로젝트 태그 생성 화면*

4. 정상적으로 태그가 생성되고 파이프라인이 작동하는 걸 확인할 수 있습니다.

    ![GitLab 파이프라인 상태 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-14.png)
    *GitLab 파이프라인 상태 화면*

5. 파이프라인이 작동한 이후 다시 CI/CD Catalog 배지를 클릭하면 아래 화면을 볼 수 있습니다.

    **Components** 페이지와 **Readme** 페이지가 있는데요. **Components** 페이지에서는 CI/CD 컴포넌트 활용 방법과 사용할 수 있는 Inputs 변수 리스트를 볼 수 있습니다. 각 입력 키의 역할과 사용 예시도 확인할 수 있습니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 Components 페이지 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-15.png)
    *GitLab CI/CD 컴포넌트 프로젝트 Components 페이지 화면*

6. **Readme** 페이지에서는 해당 CI/CD 컴포넌트 프로젝트의 [README.md](http://readme.md/) 파일 내용을 볼 수 있습니다. 이 파일에는 CI/CD 컴포넌트 사용 설명, 예제 스크립트, 자주 묻는 질문(FAQ)이 있습니다. 이 문서를 보면 CI/CD 컴포넌트 프로젝트의 전반적인 구조와 사용법을 파악할 수 있습니다. 추가 설정, 확장 방법도 알 수 있습니다.

    ![GitLab CI/CD 컴포넌트 프로젝트 Readme 페이지 화면](/img/blog/2024-09-03-gitlab-cicd-catalog-inline-16.png)
    *GitLab CI/CD 컴포넌트 프로젝트 Readme 페이지 화면*

## 맺음말

지금까지 GitLab CI/CD 컴포넌트와 CI/CD 카탈로그 사용 방법을 알아봤습니다. 저는 ‘CI/CD 컴포넌트의 체계적 문서화’가 두 기능의 큰 장점이라고 생각합니다. 문서화 덕분에 CI/CD 컴포넌트를 더 쉽게 이해하고 잘 활용할 수 있었고요. 문서화가 부족한 템플릿을 사용할 때 불편이 크게 줄었습니다. 

여러분도 CI/CD 컴포넌트와 CI/CD 카탈로그로 파이프라인 개발을 간소화하며 DevOps 업무 효율을 높이세요. 이상 글을 마칩니다. 읽어주셔서 감사합니다. 🙂

::cta::

## 참고 자료

1. “CI/CD components”, GitLab, [https://docs.gitlab.com/ee/ci/components/](https://docs.gitlab.com/ee/ci/components/)
2. “CI/CD 컴포넌트”, GitLab 공식 기술 문서 한글판 by 인포그랩, [https://gitlab-docs.infograb.net/ee/ci/components/#publish-a-new-release](https://gitlab-docs.infograb.net/ee/ci/components/#publish-a-new-release)
3. Dov Hershkovitch, “CI/CD Catalog goes GA: No more building pipelines from scratch”, GitLab, 2024.5.8, [https://about.gitlab.com/blog/2024/05/08/ci-cd-catalog-goes-ga-no-more-building-pipelines-from-scratch/](https://about.gitlab.com/blog/2024/05/08/ci-cd-catalog-goes-ga-no-more-building-pipelines-from-scratch/)
4. Michael, “GitLab 차세대 'CI/CD 컴포넌트' 알아보기”, 인포그랩, 2024.5.8, [https://insight.infograb.net/blog/2024/05/08/cicd-component/](https://insight.infograb.net/blog/2024/05/08/cicd-component/)

::faq::

- q: GitLab CI/CD 컴포넌트란 무엇인가요?

    a: CI/CD 컴포넌트는 GitLab CI/CD 템플릿의 차세대로, 재사용할 수 있는 단일 파이프라인 구성 단위입니다. GitLab의 Dov Hershkovitch는 컴포넌트를 CI/CD 워크플로의 레고 조각에 비유하며, 매번 처음부터 만들지 않고 파이프라인을 조립할 수 있다고 설명합니다. 컴포넌트는 CI/CD 카탈로그에 게시해 공유하고, 버전을 지정해 릴리즈하며, 한 프로젝트에 여러 개를 정의하고, 입력 매개변수로 동작을 바꿀 수 있습니다.

- q: GitLab CI/CD 카탈로그란 무엇인가요?

    a: CI/CD 카탈로그는 공개된 CI/CD 컴포넌트가 있는 프로젝트 목록으로, 누구나 컴포넌트 프로젝트를 추가하거나 기존 프로젝트에 기여할 수 있습니다. CI/CD 컴포넌트와 카탈로그는 GitLab 17.0부터 GA로 제공되며, 컴포넌트 활용법과 Inputs 변수 목록, 예제를 문서로 보여 줘 변수와 사용법을 알기 어려웠던 기존 템플릿 방식의 한계를 보완합니다. 2024년 9월 기준 카탈로그는 Search or go to의 Explore 메뉴에서 볼 수 있고, 컴포넌트의 공개 범위는 소스 프로젝트의 가시성(Private, Internal, Public) 설정을 따릅니다.

- q: GitLab CI/CD 컴포넌트는 어떻게 만드나요?

    a: 먼저 컴포넌트를 호스팅할 GitLab 프로젝트를 만들고, 최상위에 templates 디렉터리, README.md, LICENSE.md, 컴포넌트를 테스트·릴리즈할 .gitlab-ci.yml을 둡니다. templates 디렉터리에 yml 파일로 컴포넌트를 정의하거나, 여러 파일로 이뤄진 컴포넌트는 하위 폴더에 template.yml을 둡니다. 컴포넌트 파일의 spec 섹션에 inputs와 기본값(예: stage 기본값 test)을 정의하고, 작업에서 $[[ inputs.stage ]] 구문으로 그 값을 참조합니다.

- q: GitLab CI/CD 컴포넌트는 어떻게 사용하나요?

    a: 컴포넌트를 쓸 프로젝트의 .gitlab-ci.yml에서 include의 component 키워드로 컴포넌트를 포함하고, inputs 키워드로 매개변수를 넘깁니다. 컴포넌트는 GitLab 도메인, 그룹·프로젝트 경로, 컴포넌트 이름, 버전을 차례로 이은 형식(컴포넌트 이름 뒤 @버전)으로 지정합니다. 예를 들어 inputs에 stage: build를 주면 컴포넌트의 작업이 build 스테이지에서 실행됩니다.

- q: GitLab CI/CD 카탈로그에 컴포넌트를 게시하려면 어떻게 하나요?

    a: 2024년 9월 기준 프로젝트 Owner 역할로 Settings > General의 Visibility, project features, permissions에서 CI/CD Catalog project 토글을 켜고, 태그가 생길 때 release 작업이 실행되도록 .gitlab-ci.yml에 릴리즈 작업을 추가합니다. 이때 프로젝트 설명, 최상단 README.md, templates 디렉터리의 컴포넌트 1개 이상이 있어야 파이프라인이 정상 동작합니다. 그다음 Code > Tags에서 태그를 만들면 파이프라인이 컴포넌트를 카탈로그에 게시하고, 카탈로그의 Components 페이지에서 사용법과 Inputs 목록을, Readme 페이지에서 README 내용을 볼 수 있습니다.

::faq-end::

::button::[팀이 함께 쓰는 GitLab 파이프라인 체계를 만들고 싶으신가요? GitLab 공식 파트너 인포그랩과 상담하세요!](https://insight.infograb.net/contact/)::
