[AWS] SDK, CLI #14

­박찬영·2025년 2월 22일

AWS

목록 보기
14/15
post-thumbnail

📌 SDK, CLI


SDK란?

  • SDK(Software Development Kit) : 애플리케이션에 AWS를 연동하기 위한 개발 도구의 집합


CLI란?

  • CLI(Command Line Interface) : 명령행 도구



📌 SDK, CLI 사용해보기


Shared Credentials 설정하기

  • Node.js와 npm 설치 후 진행

  • Shared Credentials(공유 자격 증명) : 로컬에 AWS 자격 증명을 설정하여 별도의 설정 없이 SDK나 CLI를 통해 AWS 서비스 사용 가능

  • 로컬에 파일 생성

    • Linux/MacOS : ~/.aws/connfig 혹은 ~/.aws/credentials
    • Windows : %USERPROFILE%\.aws\config 혹은 %USERPROFILE%\.aws\credentials
    • vim crendentials으로 작성하고 :wq로 저장
      [default]
       region = ap-northeast-2
       aws_access_key_id = 액세스 키 입력
       aws_secret_access_key = 액세스 키 입력

AWS SDK for JavaScript 사용해보기

  • 프로젝트 폴더 생성하여 아래 명령어 실행

    • npm init -y (프로젝트 초기화)

    • npm install --save @aws-sdk/client-s3

    • vim package.json → 마지막 줄에 "type": "module" 추가

    • vim index.js → 아래 코드 입력

    • node index.js로 실행하면 새로 생성된 버킷과 저장된 객체를 볼 수 있음

import {
	S3Client,
    CreateBucketCommand,
    PutObjectCommand,
} from '@aws-sdk/client-s3';

export async function main() {
	const s3Client = new S3Client({});
    
    // S3 버킷 생성
    const bucketName = '버킷 이름 입력';
    await s3Client.send(
    	new CreateBucketCommand({
        	Bucket: bucketName,
        })
    );
	
    // S3 버킷에 파일 업로드
    await s3Client.send(
    	new PutObjectCommand({
        	Bucket: bucketName,
            Key: 'sdk.txt',
            Body: ' Hello, JavaScript SDK!',
        })
    );
}

main();


AWS CLI 사용해보기

  • 설치 링크

  • aws --version 명령어로 설치 확인

  • aws s3 ls : S3 버킷 목록 출력

  • aws s3 mb s3://<버킷_이름> : 새로운 버킷 생성 (고유한 버킷 이름 입력)

  • aws s3 cp <파일_이름> s3://<버킷_이름> : 버킷에 파일 업로드

  • aws s3 rb s3://<버킷_이름> : 버킷 삭제 (버킷이 비워진 상태에서만 가능)

    • aws s3 rb --force s3://<버킷_이름> : 버킷 강제 삭제
  • 명령을 실행하려는 서비스에 대한 권한이 공유 자격 증명에 설정되어 있어야 함 (문서)



📢 세 줄로 정리해보기!

1️⃣ AWS SDK(Software Development Kit)는 애플리케이션에 AWS를 연동하기 위한 개발 도구의 집합이다.

2️⃣ AWS CLI(Command Line Interface)는 명령행 도구이다. (터미널, 셸에서 명령 실행)

3️⃣ Shared Credentials(공유 자격 증명)을 설정하여 SDK, CLI를 통해 AWS 서비스를 사용할 수 있다.


참고 자료
소플의 처음 만난 AWS

profile
Develop하는 개발자

0개의 댓글