Fargate 및 DOCKER를 사용하여 Spring Boot 및 AWS로 마이크로서비스를 구축하는 방법 - 2부

도커란 무엇입니까?
Docker는 "컨테이너"라는 소프트웨어를 제공하기 위해 운영 체제 수준에서 가상화를 사용하는 서비스로서의 플랫폼 제품 세트입니다. 컨테이너는 서로 격리되어 있으며 소프트웨어, 라이브러리 및 구성 아카이브 그룹이 있습니다.
계정 만들기 Docker Hub
PC에서 도커 다운로드 수행: 다운로드
이제 도커 허브 계정으로 리포지토리를 만들 수 있습니다!

자, 이제 공개 저장소가 생겼습니다.

이제 도커 허브 앱에 로그인하세요. Linux를 사용하는 경우 터미널에서 아래 명령을 사용하세요.
docker login -u {you_username}, 입력을 탭하고 비밀번호를 작성합니다.

이제 루트 디렉터리에 "Dockerfile"이라는 아카이브를 만들고 해당 명령을 작성해야 합니다.
FROM openjdk:15
VOLUME /tmp
ARG DEPENDENCY=target/dependency
COPY ${DEPENDENCY}/BOOT-INF/lib /app/lib
COPY ${DEPENDENCY}/META-INF /app/META-INF
COPY ${DEPENDENCY}/BOOT-INF/classes /app
ENTRYPOINT ["java","-cp","app:app/lib/*", "com.spiet.aws_spring01.AwsSpring01Application"]
obs: com.spiet.Aws...를 초기화 클래스가 있는 패키지로 변경합니다.
build.gradle 편집
먼저 빌드 스크립트를 추가하여 애플리케이션을 이미지로 만들기 전에 빌드해야 합니다.

buildscript {
ext {
springBootVersion = '2.5.6'
}
repositories {
mavenCentral()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath("gradle.plugin.com.palantir.gradle.docker:gradle-docker:0.22.2")
}
}
obs: buildScript에 종속성 palantir.gradle.docker가 필요하므로 아래 플러그인 세션에서 추가해야 합니다.
id 'com.palantir.docker' 버전 '0.22.2'도 마찬가지입니다.
그런 다음 아래 그룹에서

docker 허브에서 그룹을 dockerId로 변경하십시오.
다음으로 아래에서 리포지토리 정보와 응용 프로그램의 mainClass가 포함된 bootJar를 추가해야 합니다.

bootJar {
baseName = 'aws_training_01'
version = '1.0.0'
mainClassName = "com.pedrospiet.spring01.AwsSpring01Application"
}
이제 프로젝트에서 도커 이미지를 생성하는 작업을 추가하겠습니다.

task unpack(type: Copy) {
dependsOn bootJar
from(zipTree(tasks.bootJar.outputs.files.singleFile))
into("build/dependency")
}
docker {
name "${project.group}/${bootJar.baseName}"
tags "${bootJar.version}"
copySpec.from(tasks.unpack.outputs).into("dependency")
buildArgs(['DEPENDENCY': "dependency"])
}
효과가있다


Intellij IDEA의 컨테이너에서 이미지 실행
먼저 ALT + 8을 누릅니다.

실행을 클릭
이미지 세션에서 이미지를 찾을 수 있으므로 오른쪽 버튼을 클릭하고 "컨테이너 만들기"로 이동합니다.
포트를 구성합니다.

적용 및 실행으로 이동

이제 우리는 불면증에서 테스트 할 수 있습니다

효과가있다!
Reference
이 문제에 관하여(Fargate 및 DOCKER를 사용하여 Spring Boot 및 AWS로 마이크로서비스를 구축하는 방법 - 2부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/pedrospiet/how-to-build-microsservices-with-spring-boot-and-aws-with-fargate-and-docker-part-2-687
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
이제 도커 허브 계정으로 리포지토리를 만들 수 있습니다!

자, 이제 공개 저장소가 생겼습니다.

이제 도커 허브 앱에 로그인하세요. Linux를 사용하는 경우 터미널에서 아래 명령을 사용하세요.
docker login -u {you_username}, 입력을 탭하고 비밀번호를 작성합니다.

이제 루트 디렉터리에 "Dockerfile"이라는 아카이브를 만들고 해당 명령을 작성해야 합니다.
FROM openjdk:15
VOLUME /tmp
ARG DEPENDENCY=target/dependency
COPY ${DEPENDENCY}/BOOT-INF/lib /app/lib
COPY ${DEPENDENCY}/META-INF /app/META-INF
COPY ${DEPENDENCY}/BOOT-INF/classes /app
ENTRYPOINT ["java","-cp","app:app/lib/*", "com.spiet.aws_spring01.AwsSpring01Application"]
obs: com.spiet.Aws...를 초기화 클래스가 있는 패키지로 변경합니다.
build.gradle 편집
먼저 빌드 스크립트를 추가하여 애플리케이션을 이미지로 만들기 전에 빌드해야 합니다.

buildscript {
ext {
springBootVersion = '2.5.6'
}
repositories {
mavenCentral()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
classpath("gradle.plugin.com.palantir.gradle.docker:gradle-docker:0.22.2")
}
}
obs: buildScript에 종속성 palantir.gradle.docker가 필요하므로 아래 플러그인 세션에서 추가해야 합니다.
id 'com.palantir.docker' 버전 '0.22.2'도 마찬가지입니다.
그런 다음 아래 그룹에서

docker 허브에서 그룹을 dockerId로 변경하십시오.
다음으로 아래에서 리포지토리 정보와 응용 프로그램의 mainClass가 포함된 bootJar를 추가해야 합니다.

bootJar {
baseName = 'aws_training_01'
version = '1.0.0'
mainClassName = "com.pedrospiet.spring01.AwsSpring01Application"
}
이제 프로젝트에서 도커 이미지를 생성하는 작업을 추가하겠습니다.

task unpack(type: Copy) {
dependsOn bootJar
from(zipTree(tasks.bootJar.outputs.files.singleFile))
into("build/dependency")
}
docker {
name "${project.group}/${bootJar.baseName}"
tags "${bootJar.version}"
copySpec.from(tasks.unpack.outputs).into("dependency")
buildArgs(['DEPENDENCY': "dependency"])
}
효과가있다


Intellij IDEA의 컨테이너에서 이미지 실행
먼저 ALT + 8을 누릅니다.

실행을 클릭
이미지 세션에서 이미지를 찾을 수 있으므로 오른쪽 버튼을 클릭하고 "컨테이너 만들기"로 이동합니다.
포트를 구성합니다.

적용 및 실행으로 이동

이제 우리는 불면증에서 테스트 할 수 있습니다

효과가있다!
Reference
이 문제에 관하여(Fargate 및 DOCKER를 사용하여 Spring Boot 및 AWS로 마이크로서비스를 구축하는 방법 - 2부), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/pedrospiet/how-to-build-microsservices-with-spring-boot-and-aws-with-fargate-and-docker-part-2-687텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)