티스토리 뷰

학습/AWS

C#으로 AWS 서버 개발하기

aigoia 2024. 4. 8. 22:58

 

 이게 어느때는 되고 어느때는 배포가 안되면 큰일나니까 6.0으로 다시 시도한다. 이게 재현가능성이 중요하다. 

https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/install-sam-cli.html

 

Installing the AWS SAM CLI - AWS Serverless Application Model

The AWS SAM CLI might interact with filepaths that exceed the Windows max path limitation. This may cause errors when running sam init due to Windows 10 MAX_PATH limitations. To resolve this issue, the new long paths behavior must be configured.

docs.aws.amazon.com

 sam을 설치해 준다. 

 

 자격증명이다. 자격 증명 추가는 AWS에서 한다.

 

aws configure sso

 

 sam init으로 헬로월드 C# 6.0 zip으로 생성을 해준다. 8.0은 가끔 안되기도 하다. 

 

Resources:
  HelloWorldFunction:
    Type: AWS::Serverless::Function # More info about Function Resource: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
    Properties:
      FunctionName: SamApp

 

템플렛에서 이부분에 펑션 네임을 설정해 줘야 랜던한 이름으로 설정이 안된다. 

 

빌드하기 전에 도커를 설치해 준다. 도커 권한은 이걸로 설정이 가능하다. 

 

sudo chmod 666 /var/run/docker.sock

 

그 다음에 donet.tools 주소를 등록을 해준다.

 

echo 'export PATH=$PATH:$HOME/.dotnet/tools' >> ~/.zshrc 

 

  bash의 경우에는 이거랑 다를수 있다. 자세한거는 Chat-GPT에 물어보면 바꿔준다.

 

Events:
  HelloWorld:
    Type: Api # More info about API Event Source: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api
    Properties:
      Path: /hello
      Method: get

 

 템플렛에서 get말고 set도 넣으려면 이부분을 수정해주면 된다. 

[default.deploy.parameters]
capabilities = "CAPABILITY_IAM"
confirm_changeset = true
resolve_s3 = false

[default.package.parameters]
resolve_s3 = false

 우리는 S3주소를 랜덤하게 생성되는 이름이 아니라 만들어서 지정을 할꺼기 때문에 resolve_s3를 false로 바꾸어 준다. 

 

sam build 

 

sam deploy --profile your-name --s3-bucket your-bucket

 

 빌드시 이렇게 버킷을 이름을 지정을 해줘야 한다. 

 

{ "method", request.RequestContext.HttpMethod},

 

 요청이 Get인지 Post인지 기타 등등은 이걸로 확인이 가능하다. RequestContext안에는 도메인 네임부터 시작해서 리퀘스트를 보낸쪽에 다양한 정보를 알수가 있다. 

 

 

https://aigoiadev.tistory.com/61

 

C# 서버 개발

며칠전에 면접을 보고왔다. 다음주 즈음에 연락이 올꺼 같은데 그전까지 C#으로 AWS 람다로 서버리스를 구현하는 것을 해보자. 아무래도 이번에 면접본 회사가 유니티 게임회사가 아니다 보니 서

aigoiadev.tistory.com

 이전 내용은 여기에 있다. 

 

 

 DB는 DynamoDB로 간다. 

 

'학습 > AWS' 카테고리의 다른 글

접근성 높은 메타버스려면  (0) 2024.08.19
Socket IO 연구  (0) 2024.08.18
새로 컴퓨터에  (0) 2024.04.07
동영상 링크 관리  (0) 2024.04.05
DB 기초 완료  (0) 2024.03.22