3.4. OpenShift에 타사 애플리케이션 배포


컴파일된 WAR 파일 또는 EAR 아카이브를 사용하여 OpenShift 배포를 위한 애플리케이션 이미지를 생성할 수 있습니다. Dockerfile을 사용하여 운영 체제, Java 및 JBoss EAP 구성 요소가 포함된 업데이트되고 포괄적인 런타임 스택과 함께 JBoss EAP 서버에 이러한 아카이브를 배포합니다.

참고

Red Hat은 사전 구축된 JBoss EAP 서버 이미지를 제공하지 않습니다.

3.4.1. 기본 구성을 사용하여 JBoss EAP 서버 프로비저닝

빌더 이미지를 사용하여 OpenShift에 기본 구성으로 JBoss EAP 서버를 설치하고 구성할 수 있습니다. 원활한 배포를 위해 절차를 수행하여 서버를 프로비저닝하고 애플리케이션 파일을 전송하고 필요한 사용자 지정을 수행합니다.

사전 요구 사항

  • 지원되는 Red Hat JBoss Enterprise Application Platform 컨테이너 이미지에 액세스할 수 있습니다. 예를 들면 다음과 같습니다.

    • registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8
    • registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8
  • podman이 시스템에 설치되어 있어야 합니다. 지원되는 RHEL에서 사용 가능한 최신 podman 버전을 사용합니다. 자세한 내용은 Red Hat JBoss Enterprise Application Platform 8.0 지원 구성을 참조하십시오.

프로세스

  1. 제공된 대로 다음 Dockerfile 콘텐츠를 복사합니다.

    # Use EAP 8 Builder image to create a JBoss EAP 8 server
    # with its default configuration
    
    FROM registry.redhat.io/jboss-eap-8/eap8-openjdk17-builder-openshift-rhel8:latest AS builder
    
    # Set up environment variables for provisioning. 
    1
    
    ENV GALLEON_PROVISION_FEATURE_PACKS org.jboss.eap:wildfly-ee-galleon-pack,org.jboss.eap.cloud:eap-cloud-galleon-pack
    ENV GALLEON_PROVISION_LAYERS cloud-default-config
    # Specify the JBoss EAP version  
    2
    
    ENV GALLEON_PROVISION_CHANNELS org.jboss.eap.channels:eap-8.0
    
    
    # Run the assemble script to provision the server.
    RUN /usr/local/s2i/assemble
    
    # Copy the JBoss EAP 8 server from the builder image to the runtime image.
    FROM registry.redhat.io/jboss-eap-8/eap8-openjdk17-runtime-openshift-rhel8:latest AS runtime
    
    # Set appropriate ownership and permissions.
    COPY --from=builder --chown=jboss:root $JBOSS_HOME $JBOSS_HOME
    
    # Steps to add:
    # (1) COPY the WAR/EAR to $JBOSS_HOME/standalone/deployments
    #       with the jboss:root user. For example:
    #     COPY --chown=jboss:root my-app.war $JBOSS_HOME/standalone/deployments 
    3
    
    # (2) (optional) server modification. You can modify EAP server configuration:
    #
    #       * invoke management operations. For example
    #
    #        RUN $JBOSS_HOME/bin/jboss-cli.sh --commands="embed-server,/system-property=Foo:add(value=Bar)"
    #
    #        First operation must always be embed-server.
    #
    #       * copy a modified standalone.xml in $JBOSS_HOME/standalone/configuration/
    #          for example
    #
    #      COPY --chown=jboss:root standalone.xml  $JBOSS_HOME/standalone/configuration
    
    # Ensure appropriate permissions for the copied files.
    RUN chmod -R ug+rwX $JBOSS_HOME
    1
    이미지 내에서 JBoss EAP Maven 플러그인에서 사용하는 MAVEN_MIRROR_URL 환경 변수를 지정할 수 있습니다. 자세한 내용은 Artifact 저장소 미러를 참조하십시오.
    2
    마이너 릴리스에 대해 이 Dockerfile을 업데이트할 필요가 없습니다. 특정 버전을 사용하려면 GALLEON_PROVISION_CHANNELS 환경 변수에 JBoss EAP 버전을 지정합니다. 자세한 내용은 환경 변수를 참조하십시오.
    3
    컨테이너에 WAR 파일을 포함하도록 복사한 Dockerfile을 수정합니다. 예를 들면 다음과 같습니다.
    COPY --chown=jboss:root <my-app.war> $JBOSS_HOME/standalone/deployments

    <myapp.war>를 이미지에 추가하려는 웹 아카이브 경로로 바꿉니다.

  2. podman을 사용하여 애플리케이션 이미지를 빌드합니다.

    $ podman build -t my-app .

    명령이 실행되면 my-app 컨테이너 이미지를 OpenShift에 배포할 수 있습니다.

  3. 다음 옵션 중 하나에 컨테이너 이미지를 업로드합니다.

  4. 레지스트리에서 이미지를 배포할 때 Helm 차트, Operator 또는 Deployment와 같은 배포 전략을 사용합니다. 선호하는 방법을 선택하고 요구 사항에 따라 전체 이미지 URL 또는 ImageStream을 사용합니다. 자세한 내용은 OpenShift에서 JBoss EAP 애플리케이션을 빌드 및 배포하기 위해 Helm 차트 사용을 참조하십시오.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

Theme

© 2026 Red Hat
맨 위로 이동