쿠키 기본 설정 선택

당사는 사이트와 서비스를 제공하는 데 필요한 필수 쿠키 및 유사한 도구를 사용합니다. 고객이 사이트를 어떻게 사용하는지 파악하고 개선할 수 있도록 성능 쿠키를 사용해 익명의 통계를 수집합니다. 필수 쿠키는 비활성화할 수 없지만 '사용자 지정' 또는 ‘거부’를 클릭하여 성능 쿠키를 거부할 수 있습니다.

사용자가 동의하는 경우 AWS와 승인된 제3자도 쿠키를 사용하여 유용한 사이트 기능을 제공하고, 사용자의 기본 설정을 기억하고, 관련 광고를 비롯한 관련 콘텐츠를 표시합니다. 필수가 아닌 모든 쿠키를 수락하거나 거부하려면 ‘수락’ 또는 ‘거부’를 클릭하세요. 더 자세한 내용을 선택하려면 ‘사용자 정의’를 클릭하세요.

Elastic Beanstalk의 사전 구성된 Docker GlassFish 컨테이너

포커스 모드
Elastic Beanstalk의 사전 구성된 Docker GlassFish 컨테이너 - AWS Elastic Beanstalk

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

참고

2022년 7월 18일 Elastic Beanstalk는 Amazon Linux AMI(AL1) 에 기반한 모든 플랫폼 브랜치의 상태를 사용 중지로 설정했습니다. 완전 지원이 가능한 현재 Amazon Linux 2023 플랫폼 브랜치로 마이그레이션하는 방법에 대한 자세한 내용은 Elastic Beanstalk Linux 애플리케이션을 Amazon Linux 2023 또는 Amazon Linux 2로 마이그레이션을(를) 참조하세요.

Amazon Linux AMI(AL1) 에서 실행되는 미리 구성된 도커 GlassFish 플랫폼 브랜치는 더 이상 지원되지 않습니다. GlassFish 애플리케이션을 지원되는 Amazon Linux 2023 플랫폼으로 마이그레이션하려면 GlassFish와 애플리케이션 코드를 Amazon Linux 2023 도커 이미지에 배포합니다. 자세한 내용은 도커 플랫폼에 GlassFish 애플리케이션 배포: Amazon Linux 2023에 대한 마이그레이션 경로 주제를 참조하십시오.

이 섹션에서는 미리 구성된 도커 컨테이너를 사용하여 로컬로 예제 애플리케이션을 개발한 다음 애플리케이션을 Elastic Beanstalk에 배포하는 방법을 연습합니다.

로컬 개발 환경 설정

이 연습을 위해 GlassFish 예제 애플리케이션을 사용합니다.

환경을 설정하려면
  1. 예제 애플리케이션을 위한 새 폴더를 만듭니다.

    ~$ mkdir eb-preconf-example ~$ cd eb-preconf-example
  2. 예제 애플리케이션 코드를 새 폴더에 다운로드하십시오.

    ~$ wget https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/docker-glassfish-v1.zip ~$ unzip docker-glassfish-v1.zip ~$ rm docker-glassfish-v1.zip

로컬로 개발 및 테스트

예제 GlassFish 애플리케이션을 개발하려면
  1. 애플리케이션의 루트 폴더에 Dockerfile을 추가합니다. 파일에서 로컬 사전 구성된 AWS Elastic Beanstalk Docker 컨테이너를 실행하는 데 사용할 Docker 기본 이미지를 지정합니다. 나중에 애플리케이션을 Elastic Beanstalk 미리 구성된 Docker GlassFish 플랫폼 버전에 배포합니다. 이 플랫폼 버전에서 사용하는 도커 기본 이미지를 선택하십시오. 플랫폼 버전의 현재 도커 이미지를 확인하려면 AWS Elastic Beanstalk 플랫폼 안내서에서 AWS Elastic Beanstalk 지원 플랫폼 페이지의 미리 구성된 도커을 참조하세요.

    예 ~/Eb-preconf-example/Dockerfile
    # For Glassfish 5.0 Java 8 FROM amazon/aws-eb-glassfish:5.0-al-onbuild-2.11.1

    Dockerfile 사용에 대한 자세한 내용은 Elastic Beanstalk에 배포하도록 Docker 이미지 준비 단원을 참조하십시오.

  2. 도커 이미지를 구축합니다.

    ~/eb-preconf-example$ docker build -t my-app-image .
  3. 해당 이미지에서 도커 컨테이너를 실행합니다.

    참고

    컨테이너의 포트 3000을 로컬 호스트 포트 8080에 매핑하려면 -p 플래그를 포함시켜야 합니다. Elastic Beanstalk 도커 컨테이너는 항상 컨테이너의 포트 8080에 애플리케이션을 표시합니다. -it 플래그는 이미지를 대화형 프로세스로 실행합니다. --rm 플래그는 컨테이너가 종료될 때 컨테이너 파일 시스템을 정리합니다. 필요에 따라 -d 플래그를 포함시켜 이미지를 데몬으로 실행할 수도 있습니다.

    $ docker run -it --rm -p 3000:8080 my-app-image
  4. 예제 애플리케이션을 보려면 웹 브라우저에 다음 URL을 입력합니다.

    http://localhost:3000
    웹 브라우저에 표시되는 GlassFish 예제 애플리케이션

Elastic Beanstalk에 배포

애플리케이션을 테스트하면 이를 Elastic Beanstalk에 배포할 준비가 완료됩니다.

Elastic Beanstalk에 애플리케이션을 배포하려면
  1. 애플리케이션의 루트 폴더에서 DockerfileDockerfile.local로 이름을 바꿉니다. 이 단계는 Elastic Beanstalk가 Elastic Beanstalk에 대한 올바른 지침이 포함된 Dockerfile을 사용하여 Elastic Beanstalk 환경의 각 Amazon EC2 인스턴스에 사용자 지정된 도커 이미지를 빌드하는 데 필요합니다.

    참고

    Dockerfile에 플랫폼 버전의 기본 도커 이미지를 수정하는 지침이 포함된 경우 이 단계를 수행하지 않아도 됩니다. Dockerfile에 컨테이너를 구축할 기본 이미지를 지정하는 Dockerfile 줄만 포함된 경우 FROM을 사용하지 않아도 됩니다. 이 경우 Dockerfile은 불필요합니다.

  2. 애플리케이션 소스 번들을 생성합니다.

    ~/eb-preconf-example$ zip myapp.zip -r *
  3. 미리 구성된 다음 링크를 사용하여 Elastic Beanstalk 콘솔을 엽니다. console.aws.amazon.com/elasticbeanstalk/home#/newApplication?applicationName=tutorials&environmentType=LoadBalanced

  4. 플랫폼에 대해, 미리 구성된 – Docker에서 Glassfish를 선택합니다.

  5. [Application code]에서 [Upload your code]를 선택한 다음 [Upload]를 선택합니다.

  6. 로컬 파일을 선택하고 Browse(찾아보기)를 선택한 후 방금 생성한 애플리케이션 소스 번들을 엽니다.

  7. 업로드를 선택합니다.

  8. 검토 및 시작을 선택합니다.

  9. 사용 가능한 설정을 검토한 후 앱 생성을 선택합니다.

  10. 환경이 생성되면 배포된 애플리케이션을 볼 수 있습니다. 콘솔 대시보드 상단에 표시되는 환경 URL을 선택하십시오.

이 섹션에서는 미리 구성된 도커 컨테이너를 사용하여 로컬로 예제 애플리케이션을 개발한 다음 애플리케이션을 Elastic Beanstalk에 배포하는 방법을 연습합니다.

로컬 개발 환경 설정

이 연습을 위해 GlassFish 예제 애플리케이션을 사용합니다.

환경을 설정하려면
  1. 예제 애플리케이션을 위한 새 폴더를 만듭니다.

    ~$ mkdir eb-preconf-example ~$ cd eb-preconf-example
  2. 예제 애플리케이션 코드를 새 폴더에 다운로드하십시오.

    ~$ wget https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/docker-glassfish-v1.zip ~$ unzip docker-glassfish-v1.zip ~$ rm docker-glassfish-v1.zip

로컬로 개발 및 테스트

예제 GlassFish 애플리케이션을 개발하려면
  1. 애플리케이션의 루트 폴더에 Dockerfile을 추가합니다. 파일에서 로컬 사전 구성된 AWS Elastic Beanstalk Docker 컨테이너를 실행하는 데 사용할 Docker 기본 이미지를 지정합니다. 나중에 애플리케이션을 Elastic Beanstalk 미리 구성된 Docker GlassFish 플랫폼 버전에 배포합니다. 이 플랫폼 버전에서 사용하는 도커 기본 이미지를 선택하십시오. 플랫폼 버전의 현재 도커 이미지를 확인하려면 AWS Elastic Beanstalk 플랫폼 안내서에서 AWS Elastic Beanstalk 지원 플랫폼 페이지의 미리 구성된 도커을 참조하세요.

    예 ~/Eb-preconf-example/Dockerfile
    # For Glassfish 5.0 Java 8 FROM amazon/aws-eb-glassfish:5.0-al-onbuild-2.11.1

    Dockerfile 사용에 대한 자세한 내용은 Elastic Beanstalk에 배포하도록 Docker 이미지 준비 단원을 참조하십시오.

  2. 도커 이미지를 구축합니다.

    ~/eb-preconf-example$ docker build -t my-app-image .
  3. 해당 이미지에서 도커 컨테이너를 실행합니다.

    참고

    컨테이너의 포트 3000을 로컬 호스트 포트 8080에 매핑하려면 -p 플래그를 포함시켜야 합니다. Elastic Beanstalk 도커 컨테이너는 항상 컨테이너의 포트 8080에 애플리케이션을 표시합니다. -it 플래그는 이미지를 대화형 프로세스로 실행합니다. --rm 플래그는 컨테이너가 종료될 때 컨테이너 파일 시스템을 정리합니다. 필요에 따라 -d 플래그를 포함시켜 이미지를 데몬으로 실행할 수도 있습니다.

    $ docker run -it --rm -p 3000:8080 my-app-image
  4. 예제 애플리케이션을 보려면 웹 브라우저에 다음 URL을 입력합니다.

    http://localhost:3000
    웹 브라우저에 표시되는 GlassFish 예제 애플리케이션

Elastic Beanstalk에 배포

애플리케이션을 테스트하면 이를 Elastic Beanstalk에 배포할 준비가 완료됩니다.

Elastic Beanstalk에 애플리케이션을 배포하려면
  1. 애플리케이션의 루트 폴더에서 DockerfileDockerfile.local로 이름을 바꿉니다. 이 단계는 Elastic Beanstalk가 Elastic Beanstalk에 대한 올바른 지침이 포함된 Dockerfile을 사용하여 Elastic Beanstalk 환경의 각 Amazon EC2 인스턴스에 사용자 지정된 도커 이미지를 빌드하는 데 필요합니다.

    참고

    Dockerfile에 플랫폼 버전의 기본 도커 이미지를 수정하는 지침이 포함된 경우 이 단계를 수행하지 않아도 됩니다. Dockerfile에 컨테이너를 구축할 기본 이미지를 지정하는 Dockerfile 줄만 포함된 경우 FROM을 사용하지 않아도 됩니다. 이 경우 Dockerfile은 불필요합니다.

  2. 애플리케이션 소스 번들을 생성합니다.

    ~/eb-preconf-example$ zip myapp.zip -r *
  3. 미리 구성된 다음 링크를 사용하여 Elastic Beanstalk 콘솔을 엽니다. console.aws.amazon.com/elasticbeanstalk/home#/newApplication?applicationName=tutorials&environmentType=LoadBalanced

  4. 플랫폼에 대해, 미리 구성된 – Docker에서 Glassfish를 선택합니다.

  5. [Application code]에서 [Upload your code]를 선택한 다음 [Upload]를 선택합니다.

  6. 로컬 파일을 선택하고 Browse(찾아보기)를 선택한 후 방금 생성한 애플리케이션 소스 번들을 엽니다.

  7. 업로드를 선택합니다.

  8. 검토 및 시작을 선택합니다.

  9. 사용 가능한 설정을 검토한 후 앱 생성을 선택합니다.

  10. 환경이 생성되면 배포된 애플리케이션을 볼 수 있습니다. 콘솔 대시보드 상단에 표시되는 환경 URL을 선택하십시오.

도커 플랫폼에 GlassFish 애플리케이션 배포: Amazon Linux 2023에 대한 마이그레이션 경로

이 자습서의 목표는 미리 구성된 Docker GlassFish 플랫폼(Amazon Linux AMI 기반)을 사용하는 고객에게 Amazon Linux 2023에 대한 마이그레이션 경로를 제공하는 것입니다. GlassFish 및 애플리케이션 코드를 Amazon Linux 2023 도커 이미지에 배포하여 GlassFish 애플리케이션을 Amazon Linux 2023으로 마이그레이션할 수 있습니다.

이 자습서에서는 AWS Elastic Beanstalk Docker 플랫폼을 사용하여 Java EE GlassFish 애플리케이션 서버를 기반으로 애플리케이션을 Elastic Beanstalk 환경에 배포하는 방법을 안내합니다.

도커 이미지를 작성하는 두 가지 방법을 보여줍니다:

  • 단순 – GlassFish 애플리케이션 소스 코드를 제공하고 Elastic Beanstalk가 사용자 환경을 프로비저닝하는 과정에서 도커 이미지를 빌드 및 실행하도록 합니다. 인스턴스 프로비저닝 시간이 늘어나면 쉽게 설정할 수 있습니다.

  • 고급 – 애플리케이션 코드와 종속성이 포함된 사용자 지정 도커 이미지를 빌드하고 사용자 환경에서 사용할 수 있도록 Elastic Beanstalk에 제공합니다. 해당 접근 방식은 관련성이 더 높으며 사용자 환경에서 인스턴스의 프로비저닝 시간을 단축합니다.

사전 조건

이 튜토리얼에서는 사용자가 기본 Elastic Beanstalk 작업, Elastic Beanstalk 명령줄 인터페이스(EB CLI), 그리고 도커에 대해 어느 정도 알고 있다고 가정합니다. 아직 그렇지 않은 경우 Elastic Beanstalk 시작하기의 지침에 따라 첫 Elastic Beanstalk 환경을 시작합니다. 이 튜토리얼에서는 EB CLI를 사용하지만 Elastic Beanstalk 콘솔을 사용하여 환경을 생성하고 애플리케이션을 업로드할 수도 있습니다.

이 튜토리얼을 따르려면 다음 도커 구성 요소도 필요합니다:

  • 도커가 로컬에 유효하게 설치되어야 합니다. 자세한 정보는 도커 설명서 웹 사이트에서 도커 가져오기를 참조하세요.

  • 도커 허브에 액세스합니다. 도커 허브에 액세스하려면 도커 ID를 생성해야 합니다. 자세한 내용은 도커 설명서 웹 사이트에서 애플리케이션 공유를 참조하세요.

Elastic Beanstalk 플랫폼에서 Docker 환경을 구성하는 방법에 대한 자세한 내용은 해당 같은 챕터에서 Elastic Beanstalk에 배포하도록 Docker 이미지 준비을(를) 참조하세요.

단순 예제: 애플리케이션 코드 제공

GlassFish 애플리케이션을 배포하는 손쉬운 방법입니다. 이 자습서에 포함된 Dockerfile과 함께 애플리케이션 소스 코드를 제공합니다. Elastic Beanstalk는 애플리케이션 및 GlassFish 소프트웨어 스택을 포함하는 도커 이미지를 빌드합니다. 그런 다음 Elastic Beanstalk가 사용자 환경 인스턴스에서 이미지를 실행합니다.

이 접근 방식의 문제점은 Elastic Beanstalk가 사용자 환경에 대한 인스턴스를 생성할 때마다 도커 이미지를 로컬로 빌드하는 것입니다. 이미지를 빌드하면 인스턴스 프로비저닝 시간이 늘어납니다. 이러한 영향은 초기 환경 생성에만 국한되지 않고 스케일 아웃 작업 중에도 발생합니다.

예제 GlassFish 애플리케이션을 사용하여 환경을 시작하려면
  1. 예제 docker-glassfish-al2-v1.zip을 다운로드한 다음 개발 환경의 디렉터리로 .zip 파일을 확장합니다.

    ~$ curl https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/samples/docker-glassfish-al2-v1.zip --output docker-glassfish-al2-v1.zip ~$ mkdir glassfish-example ~$ cd glassfish-example ~/glassfish-example$ unzip ../docker-glassfish-al2-v1.zip

    디렉터리 구조는 다음과 같아야 합니다.

    ~/glassfish-example |-- Dockerfile |-- Dockerrun.aws.json |-- glassfish-start.sh |-- index.jsp |-- META-INF | |-- LICENSE.txt | |-- MANIFEST.MF | `-- NOTICE.txt |-- robots.txt `-- WEB-INF `-- web.xml

    다음 파일은 사용자 환경에서 Docker 컨테이너를 빌드하고 실행하는 데 중요합니다.

    • Dockerfile – Docker가 애플리케이션 및 필수 종속성을 사용하여 이미지를 빌드하는 데 사용하는 지침을 제공합니다.

    • glassfish-start.sh – 도커 이미지가 애플리케이션을 시작하기 위해 실행되는 쉘 스크립트입니다.

    • Dockerrun.aws.json – GlassFish 애플리케이션 서버 로그를 로그 파일 요청에 포함하기 위해 로깅 키를 제공합니다. GlassFish 로그에 관심이 없으면 이 파일을 생략할 수 있습니다.

  2. Elastic Beanstalk에 배포할 로컬 디렉터리를 구성합니다.

    ~/glassfish-example$ eb init -p docker glassfish-example
  3. (선택 사항) eb local run 명령을 사용하여 컨테이너를 로컬로 빌드 및 실행합니다.

    ~/glassfish-example$ eb local run --port 8080
    참고

    eb local 명령에 대한 자세한 내용은 eb local 단원을 참조하십시오. 이 명령은 Windows에서 지원되지 않습니다. 또는 docker builddocker run 명령으로 컨테이너를 빌드 및 실행할 수도 있습니다. 자세한 내용은 도커 설명서를 참조하십시오.

  4. (선택 사항) 컨테이너 실행 중에는 eb local open 명령을 사용하여 웹 브라우저에서 애플리케이션을 봅니다. 또는 웹 브라우저에서 http://localhost:8080/을(를) 엽니다.

    ~/glassfish-example$ eb local open
  5. eb create 명령을 사용하여 환경을 생성하고 애플리케이션을 배포합니다.

    ~/glassfish-example$ eb create glassfish-example-env
  6. 사용자 환경이 시작된 후 eb open 명령을 사용하여 웹 브라우저에서 봅니다.

    ~/glassfish-example$ eb open

예제 작업이 완료되면 환경을 종료하고 관련 리소스를 삭제합니다.

~/glassfish-example$ eb terminate --all

고급 예제: 미리 빌드된 도커 이미지 제공

GlassFish 애플리케이션을 배포하는 고급 방법입니다. 첫 번째 예제를 기반으로 애플리케이션 코드와 GlassFish 소프트웨어 스택이 포함된 도커 이미지를 생성하고 Docker Hub로 푸시합니다. 이 일회성 단계가 완료된 후 사용자 지정 이미지를 기반으로 Elastic Beanstalk 환경을 시작할 수 있습니다.

사용자 환경을 시작하고 도커 이미지를 제공하면 사용자 환경의 인스턴스가 이 이미지를 직접 다운로드하여 사용하므로 도커 이미지를 빌드할 필요가 없습니다. 따라서 인스턴스 프로비저닝 시간이 단축됩니다.

Notes
  • 다음 단계를 따라 공개 사용이 가능한 도커 이미지를 생성합니다.

  • 도커 허브 자격 증명과 함께 로컬 도커 설치에서 도커 명령을 사용합니다. 자세한 내용은 이 주제의 이전 사전 조건 섹션을 참조하세요.

미리 빌드된 GlassFish 애플리케이션 도커 이미지가 있는 환경을 시작하려면
  1. 앞의 단순 예제와 같이 예제 docker-glassfish-al2-v1.zip을 다운로드하고 확장합니다. 이 예제를 완료한 경우 이미 가지고 있는 디렉터리를 사용할 수 있습니다.

  2. 도커 이미지를 빌드하고 Docker Hub로 푸시합니다. Docker Hub에 로그인하려면 docker-id에 Docker ID를 입력하세요.

    ~/glassfish-example$ docker build -t docker-id/beanstalk-glassfish-example:latest . ~/glassfish-example$ docker push docker-id/beanstalk-glassfish-example:latest
    참고

    이미지 푸시 전에 docker login을 실행해야 할 수 있습니다. 파라미터없이 명령을 실행하면 Docker Hub 자격 증명을 묻는 메시지가 표시됩니다.

  3. 추가 디렉터리를 생성합니다.

    ~$ mkdir glassfish-prebuilt ~$ cd glassfish-prebuilt
  4. 다음 예제를 Dockerrun.aws.json이라는 파일에 복사합니다.

    ~/glassfish-prebuilt/Dockerrun.aws.json
    { "AWSEBDockerrunVersion": "1", "Image": { "Name": "docker-username/beanstalk-glassfish-example" }, "Ports": [ { "ContainerPort": 8080, "HostPort": 8080 } ], "Logging": "/usr/local/glassfish5/glassfish/domains/domain1/logs" }
  5. Elastic Beanstalk에 배포할 로컬 디렉터리를 구성합니다.

    ~/glassfish-prebuilt$ eb init -p docker glassfish-prebuilt$
  6. (선택 사항) eb local run 명령을 사용하여 컨테이너를 로컬로 실행합니다.

    ~/glassfish-prebuilt$ eb local run --port 8080
  7. (선택 사항) 컨테이너 실행 중에는 eb local open 명령을 사용하여 웹 브라우저에서 애플리케이션을 봅니다. 또는 웹 브라우저에서 http://localhost:8080/을(를) 엽니다.

    ~/glassfish-prebuilt$ eb local open
  8. eb create 명령을 사용하여 환경을 생성하고 도커 이미지를 배포합니다.

    ~/glassfish-prebuilt$ eb create glassfish-prebuilt-env
  9. 사용자 환경이 시작된 후 eb open 명령을 사용하여 웹 브라우저에서 봅니다.

    ~/glassfish-prebuilt$ eb open

예제 작업이 완료되면 환경을 종료하고 관련 리소스를 삭제합니다.

~/glassfish-prebuilt$ eb terminate --all

이 페이지에서

프라이버시사이트 이용 약관쿠키 기본 설정
© 2025, Amazon Web Services, Inc. 또는 계열사. All rights reserved.