AWS App Runner에서 Golang 서버를 빠르게 시작하십시오.
컨테이너화된 웹 애플리케이션을 간단하게 디버깅할 수 있는 서비스다.(뒷면에는 Fargate 사용)
2021년 5월에 등장하는 서비스라 새롭다.
컨테이너를 움직이게 하는 수단으로는 아마존 ECS가 있지만, 그것보다 서버를 빨리 만들려고 할 때 편리할 것 같다.
요금 체계 (@ 도쿄 지역)
다음 세 가지 요소로 구성되어 있습니다.
2022년 2월 업데이트에서 VPC 트래픽 지원
게시 노트에 따르면 앱 런너는 VPC의 리소스에 접근할 수 있다.
https://docs.aws.amazon.com/apprunner/latest/relnotes/release-2022-02-08-vpc.html
어떻게 된 일인지 말하자면 기존에는 앱런너가 RDS 등 AWS 리소스에 접근할 때 공적인 접근이 필요했다.그게 마음에 걸려서 앱런너 사용에 두 걸음 밟았지만 이번 업데이트를 계기로 해보고 싶었다.(단, 이번 보도는 공개적으로 방문한 서버입니다.)
환경 확인
Golang의 echo 프레임워크를 사용하여 응용 프로그램을 설계하고 싶습니다.
Golang의 버전은 다음과 같다↓
go version go1.17.8 darwin/amd64
GiitHub 창고의 URL은 여기.입니다.손수
(1) ECR의 창고 제작
이번에는 ECR에 밀린 인상을 바탕으로 앱 런너를 운영하고 싶다.
이 글에서 우리는
appprunner-golang
라는 창고를 만들었다.※ 나중에 필요하면 추진 명령을 미리 복사합니다.
(2) Golang 어플리케이션 설치 준비
mkdir apprunner-golang && cd apprunner-golang
go mod init apprunner-golang
go get github.com/labstack/echo/v4
go get github.com/labstack/echo/v4/middleware
(3) 설치vim server.go
package main
import (
"github.com/labstack/echo/v4"
"github.com/labstack/echo/v4/middleware"
"net/http"
)
func main() {
e := echo.New()
e.Use(middleware.Logger())
e.Use(middleware.Recover())
e.GET("/", helloAppRunner)
e.Logger.Fatal(e.Start(":8080"))
}
func helloAppRunner(c echo.Context) error {
return c.String(http.StatusOK, "Hello, This is AWS App Runner!!")
}
(4) Docker File 만들기FROM golang:1.17-alpine
WORKDIR /app
COPY go.mod ./
COPY *.go ./
RUN go mod tidy \
&& go get \
&& go build -o /apprunner-golang
EXPOSE 8080
CMD ["/apprunner-golang"]
(5) ECR에 이미지 누르기ECR의 콘솔에서 얻은 추진 명령을 사용합니다.
aws ecr get-login-password --region ap-northeast-1 | docker login --username AWS --password-stdin {your_account_id}.dkr.ecr.ap-northeast-1.amazonaws.com
docker build -t apprunner-golang .
docker tag apprunner-golang:latest {your_account_id}.dkr.ecr.ap-northeast-1.amazonaws.com/apprunner-golang:latest
docker push {your_account_id}.dkr.ecr.ap-northeast-1.amazonaws.com/apprunner-golang:latest
//M1 Macでビルドす場合は以下の通りにしないとだめっぽい
docker build --platform amd64 -t apprunner-golang .
(6) App Runner 콘솔에서 작업컨테이너 레지스트리 및 Amazon ECR을 선택한 후 방금 만든 ECR 이미지의 URI를 지정합니다.
아래와 같이 설정하고 "다음"을 누르십시오.
다음 화면에서 서비스 이름을 지정합니다.
또 포트가
8080
인지 네트워크가 パブリックアクセス
인지 확인한다.다음 을 누릅니다.이후 확인 화면에 "제작과 디버깅"을 누릅니다.
(7) 확인
몇 분 후
Create Serviceが成功しました。
.기본 도메인을 클릭하면 Golang의 응답이 표시됩니다.
감상
Reference
이 문제에 관하여(AWS App Runner에서 Golang 서버를 빠르게 시작하십시오.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Kohei-Sato-1221/items/e78cd8eadc67a4c287b1텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)