1.6. 기본 실행 파일에 컴파일된 Quarkus 애플리케이션 배포


Docker 빌드 전략을 사용하여 네이티브 Quarkus 애플리케이션을 OpenShift에 배포할 수 있습니다. Linux X86_64 운영 체제를 대상으로 하는 애플리케이션에 대한 기본 실행 파일을 생성해야 합니다. 호스트 운영 체제가 이와 다른 경우 Docker 또는 Podman과 같은 컨테이너 런타임을 사용하여 기본 Linux 실행 파일을 생성해야 합니다.

Quarkus 프로젝트에는 지침이 포함된 사전 생성된 Dockerfile이 포함되어 있습니다. 사용자 지정 Dockerfile을 사용하려면 src/main/docker 디렉터리에 또는 모듈 내의 모든 위치에 파일을 추가해야 합니다. 또한 quarkus.openshift.native-dockerfile 속성을 사용하여 Dockerfile의 경로를 설정해야 합니다.

사전 요구 사항

  • Linux X86_64 운영 체제 또는 Podman 또는 Docker와 같은 OCI(Open Container Initiative) 호환 컨테이너 런타임
  • quarkus-openshift 확장을 포함하는 Quarkus Maven 프로젝트를 준비합니다.

프로세스

  1. oc 를 사용하여 OpenShift에 로그인한 다음 Quarkus Maven 프로젝트가 포함된 디렉터리로 변경합니다.

  2. application.properties 파일에서 다음 속성을 구성합니다.

    1. Docker 빌드 전략을 설정합니다.

      quarkus.openshift.build-strategy=docker
    2. 컨테이너 런타임을 설정합니다.

      quarkus.native.container-build=true
    3. (선택 사항) 신뢰할 수 없는 인증서를 사용하는 경우 KubernetesClient 를 구성합니다.

      quarkus.kubernetes-client.trust-certs=true
    4. (선택 사항) 서비스를 노출하여 OpenShift 경로를 생성합니다.

      quarkus.openshift.route.expose=true
    5. (선택 사항) 사용자 지정 Dockerfile의 경로를 설정합니다.

      quarkus.openshift.native-dockerfile=<path_to_your_dockerfile>

      다음 예제에서는 Dockerfile.custom-native 의 경로를 보여줍니다.

      quarkus.openshift.jvm-dockerfile=src/main/docker/Dockerfile.custom-native
    6. (선택 사항) 컨테이너 엔진을 지정합니다.

      • Podman을 사용하여 기본 실행 파일을 빌드하려면 다음을 수행합니다.

        quarkus.native.container-runtime=podman
      • Docker를 사용하여 기본 실행 파일을 빌드하려면 다음을 수행합니다.

        quarkus.native.container-runtime=docker
  3. 네이티브 실행 파일을 빌드하고 OpenShift에 애플리케이션을 배포합니다.

    ./mvnw clean package -Pnative -Dquarkus.kubernetes.deploy=true

검증

  1. 현재 OpenShift 프로젝트와 연결된 Pod 목록을 보려면 다음을 수행합니다.

    oc get pods
  2. 애플리케이션 Pod의 로그 출력을 검색하려면 다음 명령을 입력합니다. 여기서 < pod_name >은 애플리케이션 이름이 접두사가 지정된 최신 Pod의 이름입니다.

    oc logs -f <pod_name>
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.