fargatecli로 컨테이너를 세워주세요.
4752 단어 AWSDockerECSAWS Fargatetech
차리다
나는 아무것도 할 줄 모른다.내가 너를 좀 돌볼 필요가 있다.
VPC 준비
fargatecli는 나에게 VPC 한 세트를 주지 않는다.클라미수 씨는 우리를 위해 최강의 학습용 VPC 클라우드 포메이션을 준비했기 때문에 우리는 이 VPC를 준비했다.마음에 드는 구역으로 가세요.
FronteendSubnet 1,2의 ID와 Application Subnet 1,2의 ID를 저장합니다.
ALB 준비 보안 팀
fargatecli는 우리에게 안전팀을 주지 않을 것이다.만들다검은 테이프에서 ALB 80에 접근할 수 있도록 미리 열어 두세요.이것은 네트워크 연결을 억지로 허용할 필요가 없고, 자신의 IP 주소에서 열기만 하면 충분하다.
컨테이너에 실을 안전팀을 준비하다
fargatecli는 우리에게 안전팀을 주지 않을 것이다.만들다컨테이너 80에 액세스할 수 있도록 ALB의 보안 그룹 ID에서 엽니다.
ECS에 클러스터 구성
fargatecli는 ECS 클러스터에 대해 작동하지 않습니다.만들다
$ aws ecs create-cluster --cluster-name nginx-cluster
fargatecli 설치
googet은fargatecli의 명령명으로 바이너리를 생성합니다.
$ go get github.com/awslabs/fargatecli
$ which fargatecli
fargatecli로 세워주세요.
fargatecli에서 oneshot의Task, 세워진 서비스로 외부에 공개된 LB, LB에 부착된 Certificate를 관리할 수 있습니다.여기서 NGNX를 한꺼번에 세워서 아주 간단한 분위기를 보세요.
fargatecli로 ALB 만들기
Ib 명령을 사용하여 ALB를 구성할 수 있습니다.
$ fargatecli lb create nginx-lb \
--port 80 --scheme internet-facing \
--subnet-id subnet-0807a5c3c2e826742,subnet-0d6b6251136c18fa0 \
--security-group-id sg-0b21077fb303c2e2a
[i] Created load balancer nginx-lb
성공하면 ALB의 제작이 시작된다.STATUS가 Active가 될 때까지 기다립니다.$ fargatecli lb list
NAME TYPE STATUS DNS NAME PORTS
nginx-lb Application Provisioning nginx-lb-845291675.us-east-1.elb.amazonaws.com HTTP:80
이상한 데 없는 ALB.AWS CLI 및 AWS 에이전트도 일반적으로 ALB로 존재합니다.$ aws elbv2 describe-load-balancers --names nginx-lb
fargatecli로 컨테이너를 세워주세요.
드디어 컨테이너가 가동되었다.
CLI 매개 변수가 많습니다.ECS 클러스터 이름, 컨테이너의 VPC 서브넷 ID, 컨테이너에 부착된 보안 그룹 ID, 머신 리소스, 부팅된 컨테이너 수, 컨테이너 이미지, 열린 포트, 연관된 ALB 이름을 지정합니다.
$ fargatecli service create nginx-service \
--cluster nginx-cluster \
--subnet-id subnet-0f53ebfa6d0c7a323,subnet-0b37fdb04471d9495 \
--cpu 256 --memory 512 --num 2 \
--image nginx:stable --port 80 \
--security-group-id sg-04834761e4cb48b21 \
--lb nginx-lb
[i] Created service nginx-service
cluster 지정은 다음과 같은 시작 상황을 볼 수 있습니다.$ fargatecli service list --cluster nginx-cluster
NAME IMAGE CPU MEMORY LOAD BALANCER DESIRED RUNNING PENDING
nginx-service nginx:stable 256 512 nginx-lb 2 0 2
RUNNING이 되면 ALB의 URL에 액세스하여 NGNX의 초기 페이지를 볼 수 있습니다.이번에는 HTTPS가 설정되지 않았습니다. HTTP를 사용하여 액세스하십시오.fargatecli로 용기 이미지 바꾸기
작업 중에 사용하면 새로운 버전의 용기 이미지도 디자인할 수 있다.stable를nginx:latest로 바꾸면 재미있을 것 같아요.
$ fargatecli service deploy nginx-service \
--cluster nginx-cluster \
--image nginx:latest
[i] Deployed nginx:latest to service nginx-service
$ fargatecli service list --cluster nginx-cluster
NAME IMAGE CPU MEMORY LOAD BALANCER DESIRED RUNNING PENDING
nginx-service nginx:latest 256 512 nginx-lb 2 2 0
이렇게 간단하게 디자인할 수 있습니다.fargatecli로 치우고.
서비스를 먼저 데스크톱에 놓고 데스크톱에 놓고 삭제할 수 있다.
$ fargatecli service scale nginx-service "0" \
--cluster nginx-cluster
[i] Scaled service nginx-service to 0
$ fargatecli service destroy nginx-service \
--cluster nginx-cluster
[i] Destroyed service nginx-service
도 ALB를 삭제할 수 있습니다.$ fargatecli lb destroy nginx-lb
[i] Destroyed load balancer nginx-lb
얼마나 사용할 수 있습니까?
위에서 말한 바와 같이 ECS와Fargate에서 아무것도 모르는 곳에서 어쨌든 컨테이너를 세울 수 있는 것이 최고다.컨테이너 이미지의 디자인을 제외하고 README.md를 읽으면Fargate의 축소, 확대, 다시 시작해도 됩니다. 일련의 스크립트를 덮어쓸 수 있을 것 같습니다.
하지만 fargatecli의 제출 로그를 보니 특별히 활발한 개발이 아닌 것으로 밝혀져 장기적으로 불안하다.작업상 까다로운 제품의 CD 라인을 잘 엮으면 갑자기 움직일 수 없게 된다.거기서 포크 일련토생의 뿌리가 있다면 곧 사용할 것이다.
학습용도, 신제품 시동을 걸 때는 지금이라도 사용하기 편할 때ecspresso,docker-compose,Copilot 등으로 도피 준비를 하는 것이 좋을 것 같다(과하다).
Reference
이 문제에 관하여(fargatecli로 컨테이너를 세워주세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/sasasin/articles/b43cea2ffe8813텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)