serverless frame work + Type Script + DynamoDB의 로컬 환경
8309 단어 ServerlessDynamoDBtech
로컬 개발 Serverless 애플리케이션 - Qita
절차를 정리하다.DynamoDB도 사용합니다.
1. sls create
sls create -t aws-nodejs-typescript -p my-api
2. plugin
에 추가
npm i -D serverless-offline serverless-dynamodb-local
serverless.ts
plugins: [
'serverless-webpack',
'serverless-dynamodb-local',
'serverless-offline',
]
3. JDK 없을 때 JDK 설치
dynamodb-local을 위해서는 자바가 필요합니다.
다음 방법으로 Ubuntu를 설치합니다.
sudo apt install openjdk-14-jdk
4. sls dynamodb install
다음 설치를 수행합니다.
.dynamodb 아래에서 실행 파일을 다운로드합니다.
sls dynamodb install
5.dynamodb local로 설정
serverless.ts
에서 다음을 설정합니다. custom: {
// ...
dynamodb: {
stages: ['dev'],
start: {
port: 8000,
inMemory: true,
migrate: true,
seed: false,
},
},
},
resources: {
Resources: {
JankensTable: {
Type: 'AWS::DynamoDB::Table',
Properties: {
TableName: 'jankens',
AttributeDefinitions: [
{
AttributeName: 'player',
AttributeType: 'S',
},
{
AttributeName: 'unixtime',
AttributeType: 'N',
},
],
KeySchema: [
{
AttributeName: 'player',
KeyType: 'HASH',
},
{
AttributeName: 'unixtime',
KeyType: 'RANGE',
},
],
ProvisionedThroughput: {
ReadCapacityUnits: 1,
WriteCapacityUnits: 1,
},
},
},
},
},
6. sls dynamodb start
dynamodb local 등록 양식 시작
7. npm i -S aws-sdk
npm i -S aws-sdk
8. Lambda에서 DynamoDB 클라이언트 초기화
위에서 말한 바와 같이
process.env.IS_OFFLINE
지점이 서버less-offline 환경인지 여부입니다.import { DynamoDB } from 'aws-sdk'
const dynamodb = process.env.IS_OFFLINE
? new DynamoDB({
region: 'localhost',
endpoint: 'http://localhost:8000',
})
: new DynamoDB()
등.
Reference
이 문제에 관하여(serverless frame work + Type Script + DynamoDB의 로컬 환경), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/maruware/articles/cac0052812c2e3293dd5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)