AWS CLI를 사용한 MediaStore 예시
다음 코드 예시에서는 MediaStore와 함께 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 관련 시나리오의 컨텍스트에 따라 표시되며, 개별 서비스 함수를 직접적으로 호출하는 방법을 보여줍니다.
각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.
주제
작업
다음 코드 예시에서는 create-container
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 생성
다음
create-container
예시에서는 빈 새 컨테이너를 생성합니다.aws mediastore create-container --container-name
ExampleContainer
출력:
{ "Container": { "AccessLoggingEnabled": false, "CreationTime": 1563557265, "Name": "ExampleContainer", "Status": "CREATING", "ARN": "arn:aws:mediastore:us-west-2:111122223333:container/ExampleContainer" } }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateContainer
를 참조하세요.
-
다음 코드 예시에서는 delete-container-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 정책 삭제
다음
delete-container-policy
예시에서는 지정된 컨테이너에 할당된 정책을 삭제합니다. 정책이 삭제되면 AWS Elemental MediaStore가 컨테이너에 기본 정책을 자동으로 할당합니다.aws mediastore delete-container-policy \ --container-name
LiveEvents
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore API 참조의 DeleteContainerPolicy를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteContainerPolicy
를 참조하세요.
-
다음 코드 예시에서는 delete-container
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 삭제
다음
delete-container
예시에서는 지정된 컨테이너를 삭제합니다. 객체가 없는 컨테이너만 삭제할 수 있습니다.aws mediastore delete-container \ --container-name=ExampleLiveDemo
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteContainer
를 참조하세요.
-
다음 코드 예시에서는 delete-cors-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
CORS 정책 삭제
다음
delete-cors-policy
예시에서는 지정된 컨테이너에 할당된 크로스 오리진 리소스 공유(CORS) 정책을 삭제합니다.aws mediastore delete-cors-policy \ --container-name
ExampleContainer
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 CORS 정책 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteCorsPolicy
를 참조하세요.
-
다음 코드 예시에서는 delete-lifecycle-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
객체 수명 주기 정책 삭제
다음
delete-lifecycle-policy
예시에서는 지정된 컨테이너에 연결된 객체 수명 주기 정책을 삭제합니다. 변경이 적용되려면 최대 20분이 걸립니다.aws mediastore delete-lifecycle-policy \ --container-name
LiveEvents
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 수명 주기 정책 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteLifecyclePolicy
를 참조하세요.
-
다음 코드 예시에서는 describe-container
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 세부 정보 보기
다음
describe-container
예시에서는 지정된 컨테이너의 세부 정보를 표시합니다.aws mediastore describe-container \ --container-name
ExampleContainer
출력:
{ "Container": { "CreationTime": 1563558086, "AccessLoggingEnabled": false, "ARN": "arn:aws:mediastore:us-west-2:111122223333:container/ExampleContainer", "Status": "ACTIVE", "Name": "ExampleContainer", "Endpoint": "https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com" } }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 세부 정보 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeContainer
를 참조하세요.
-
다음 코드 예시에서는 describe-object
의 사용 방법을 보여줍니다.
- AWS CLI
-
특정 컨테이너에 있는 객체 및 폴더의 목록 보기
다음
describe-object
예시에서는 특정 컨테이너에 저장된 항목(객체 및 폴더)을 표시합니다.aws mediastore-data describe-object \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
\ --path/folder_name/file1234.jpg
출력:
{ "ContentType": "image/jpeg", "LastModified": "Fri, 19 Jul 2019 21:32:20 GMT", "ContentLength": "2307346", "ETag": "2aa333bbcc8d8d22d777e999c88d4aa9eeeeee4dd89ff7f555555555555da6d3" }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 세부 정보 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DescribeObject
를 참조하세요.
-
다음 코드 예시에서는 get-container-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 정책 보기
다음
get-container-policy
예시에서는 지정된 컨테이너의 리소스 기반 정책을 표시합니다.aws mediastore get-container-policy \ --container-name
ExampleLiveDemo
출력:
{ "Policy": { "Version": "2012-10-17", "Statement": [ { "Sid": "PublicReadOverHttps", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": [ "mediastore:GetObject", "mediastore:DescribeObject" ], "Resource": "arn:aws:mediastore:us-west-2:111122223333:container/ExampleLiveDemo/", "Condition": { "Bool": { "aws:SecureTransport": "true" } } } ] } }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 정책 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetContainerPolicy
를 참조하세요.
-
다음 코드 예시에서는 get-cors-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
CORS 정책 보기
다음
get-cors-policy
예시에서는 지정된 컨테이너에 할당된 크로스 오리진 리소스 공유(CORS) 정책을 표시합니다.aws mediastore get-cors-policy \ --container-name
ExampleContainer
\ --regionus-west-2
출력:
{ "CorsPolicy": [ { "AllowedMethods": [ "GET", "HEAD" ], "MaxAgeSeconds": 3000, "AllowedOrigins": [ "" ], "AllowedHeaders": [ "" ] } ] }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 CORS 정책 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetCorsPolicy
를 참조하세요.
-
다음 코드 예시에서는 get-lifecycle-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
객체 수명 주기 정책 보기
다음
get-lifecycle-policy
예시에서는 지정된 컨테이너에 연결된 객체 수명 주기 정책을 표시합니다.aws mediastore get-lifecycle-policy \ --container-name
LiveEvents
출력:
{ "LifecyclePolicy": { "rules": [ { "definition": { "path": [ { "prefix": "Football/" }, { "prefix": "Baseball/" } ], "days_since_create": [ { "numeric": [ ">", 28 ] } ] }, "action": "EXPIRE" } ] } }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 수명 주기 정책 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetLifecyclePolicy
를 참조하세요.
-
다음 코드 예시에서는 get-object
의 사용 방법을 보여줍니다.
- AWS CLI
-
객체 다운로드
다음
get-object
예시에서는 지정된 엔드포인트에 객체를 다운로드합니다.aws mediastore-data get-object \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
\ --path=/folder_name/README.md
README.md출력:
{ "ContentLength": "2307346", "ContentType": "image/jpeg", "LastModified": "Fri, 19 Jul 2019 21:32:20 GMT", "ETag": "2aa333bbcc8d8d22d777e999c88d4aa9eeeeee4dd89ff7f555555555555da6d3", "StatusCode": 200 }
객체의 일부 다운로드
다음
get-object
예시에서는 지정된 엔드포인트에 객체의 일부를 다운로드합니다.aws mediastore-data get-object \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
\ --path/folder_name/README.md
\ --range="bytes=0-100"README2.md
출력:
{ "StatusCode": 206, "ContentRange": "bytes 0-100/2307346", "ContentLength": "101", "LastModified": "Fri, 19 Jul 2019 21:32:20 GMT", "ContentType": "image/jpeg", "ETag": "2aa333bbcc8d8d22d777e999c88d4aa9eeeeee4dd89ff7f555555555555da6d3" }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 다운로드를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetObject
를 참조하세요.
-
다음 코드 예시에서는 list-containers
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 목록 보기
다음
list-containers
예시에서는 계정에 연결된 모든 컨테이너의 목록을 표시합니다.aws mediastore list-containers
출력:
{ "Containers": [ { "CreationTime": 1505317931, "Endpoint": "https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com", "Status": "ACTIVE", "ARN": "arn:aws:mediastore:us-west-2:111122223333:container/ExampleLiveDemo", "AccessLoggingEnabled": false, "Name": "ExampleLiveDemo" }, { "CreationTime": 1506528818, "Endpoint": "https://fffggghhhiiijj.data.mediastore.us-west-2.amazonaws.com", "Status": "ACTIVE", "ARN": "arn:aws:mediastore:us-west-2:111122223333:container/ExampleContainer", "AccessLoggingEnabled": false, "Name": "ExampleContainer" } ] }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 목록 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListContainers
를 참조하세요.
-
다음 코드 예시에서는 list-items
의 사용 방법을 보여줍니다.
- AWS CLI
-
예시 1: 특정 컨테이너에 있는 객체 및 폴더의 목록 보기
다음
list-items
예시에서는 지정된 컨테이너에 저장된 항목(객체 및 폴더)을 표시합니다.aws mediastore-data list-items \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
출력:
{ "Items": [ { "ContentType": "image/jpeg", "LastModified": 1563571859.379, "Name": "filename.jpg", "Type": "OBJECT", "ETag": "543ab21abcd1a234ab123456a1a2b12345ab12abc12a1234abc1a2bc12345a12", "ContentLength": 3784 }, { "Type": "FOLDER", "Name": "ExampleLiveDemo" } ] }
예시 2: 특정 폴더에 있는 객체 및 폴더의 목록 보기
다음
list-items
예시에서는 특정 폴더에 저장된 항목(객체 및 폴더)을 표시합니다.aws mediastore-data list-items \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
출력:
{ "Items": [ { "ContentType": "image/jpeg", "LastModified": 1563571859.379, "Name": "filename.jpg", "Type": "OBJECT", "ETag": "543ab21abcd1a234ab123456a1a2b12345ab12abc12a1234abc1a2bc12345a12", "ContentLength": 3784 }, { "Type": "FOLDER", "Name": "ExampleLiveDemo" } ] }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 목록 보기를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListItems
를 참조하세요.
-
다음 코드 예시에서는 list-tags-for-resource
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너의 태그 나열
다음
list-tags-for-resource
예시에서는 지정된 컨테이너에 할당된 태그 키와 값을 표시합니다.aws mediastore list-tags-for-resource \ --resource
arn:aws:mediastore:us-west-2:1213456789012:container/ExampleContainer
출력:
{ "Tags": [ { "Value": "Test", "Key": "Environment" }, { "Value": "West", "Key": "Region" } ] }
자세한 내용은 AWS Elemental MediaStore API 참조의 ListTagsForResource를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListTagsForResource
를 참조하세요.
-
다음 코드 예시에서는 put-container-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너 정책 편집
다음
put-container-policy
예시에서는 지정된 컨테이너에 다른 정책을 할당합니다. 이 예시에서는 업데이트된 정책이LiveEventsContainerPolicy.json
이라는 파일에 정의되어 있습니다.aws mediastore put-container-policy \ --container-name
LiveEvents
\ --policyfile://LiveEventsContainerPolicy.json
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너 정책 편집을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutContainerPolicy
를 참조하세요.
-
다음 코드 예시에서는 put-cors-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
예시 1: CORS 정책 추가
다음
put-cors-policy
예시에서는 지정된 컨테이너에 크로스 오리진 리소스 공유(CORS) 정책을 추가합니다. CORS 정책의 내용은corsPolicy.json
이라는 파일에 있습니다.aws mediastore put-cors-policy \ --container-name
ExampleContainer
\ --cors-policyfile://corsPolicy.json
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너에 CORS 정책 추가를 참조하세요.
예시 2: CORS 정책 편집
다음
put-cors-policy
예시에서는 지정된 컨테이너에 할당된 크로스 오리진 리소스 공유(CORS) 정책을 업데이트합니다. 업데이트된 CORS 정책의 내용은corsPolicy2.json
이라는 파일에 있습니다.자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 CORS 정책 편집을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutCorsPolicy
를 참조하세요.
-
다음 코드 예시에서는 put-lifecycle-policy
의 사용 방법을 보여줍니다.
- AWS CLI
-
객체 수명 주기 정책 생성
다음
put-lifecycle-policy
예시에서는 객체 수명 주기 정책을 지정된 컨테이너에 연결합니다. 이렇게 하면 서비스가 컨테이너에 객체를 저장할 기간을 지정할 수 있습니다. MediaStore는LiveEventsLifecyclePolicy.json
이라는 이름의 파일에 있는 정책에 표시된 대로 컨테이너의 객체가 만료 날짜에 도달하면 해당 객체를 삭제합니다.aws mediastore put-lifecycle-policy \ --container-name
ExampleContainer
\ --lifecycle-policyfile://ExampleLifecyclePolicy.json
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너에 객체 수명 주기 정책 추가를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutLifecyclePolicy
를 참조하세요.
-
다음 코드 예시에서는 put-object
의 사용 방법을 보여줍니다.
- AWS CLI
-
객체 업로드
다음
put-object
예시에서는 지정된 컨테이너에 객체를 업로드합니다. 객체가 컨테이너 내에 저장될 폴더 경로를 지정할 수 있습니다. 폴더가 이미 있을 경우 AWS Elemental MediaStore는 폴더에 객체를 저장합니다. 폴더가 없으면 폴더를 만든 후 그 폴더에 객체를 저장합니다.aws mediastore-data put-object \ --endpoint
https://aaabbbcccdddee.data.mediastore.us-west-2.amazonaws.com
\ --bodyREADME.md
\ --path/folder_name/README.md
\ --cache-control"max-age=6, public"
\ --content-typebinary/octet-stream
출력:
{ "ContentSHA256": "74b5fdb517f423ed750ef214c44adfe2be36e37d861eafe9c842cbe1bf387a9d", "StorageClass": "TEMPORAL", "ETag": "af3e4731af032167a106015d1f2fe934e68b32ed1aa297a9e325f5c64979277b" }
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 객체 업로드를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 PutObject
를 참조하세요.
-
다음 코드 예시에서는 start-access-logging
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너에 대한 액세스 로깅 활성화
다음
start-access-logging
예제에서는 지정된 컨테이너에 대한 액세스 로깅을 활성화합니다.aws mediastore start-access-logging \ --container-name
LiveEvents
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너에 대한 액세스 로깅 활성화를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 StartAccessLogging
을 참조하세요.
-
다음 코드 예시에서는 stop-access-logging
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너에 대한 액세스 로깅 비활성화
다음
stop-access-logging
예시에서는 지정된 컨테이너에 대한 액세스 로깅을 비활성화합니다.aws mediastore stop-access-logging \ --container-name
LiveEvents
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore 사용자 안내서의 컨테이너에 대한 액세스 로깅 비활성화를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 StopAccessLogging
을 참조하세요.
-
다음 코드 예시에서는 tag-resource
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너에 태그 추가
다음
tag-resource
예시에서는 태그 키와 값을 지정된 컨테이너에 추가합니다.aws mediastore tag-resource \ --resource
arn:aws:mediastore:us-west-2:123456789012:container/ExampleContainer
\ --tags '[{"Key": "Region", "Value": "West"}, {"Key": "Environment", "Value": "Test"}]
'이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore API 참조의 TagResource를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 TagResource
를 참조하세요.
-
다음 코드 예시에서는 untag-resource
의 사용 방법을 보여줍니다.
- AWS CLI
-
컨테이너에서 태그 제거
다음
untag-resource
예시에서는 지정된 태그 키와 관련 값을 컨테이너에서 제거합니다.aws mediastore untag-resource \ --resource
arn:aws:mediastore:us-west-2:123456789012:container/ExampleContainer
\ --tag-keysRegion
이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Elemental MediaStore API 참조의 UntagResource를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UntagResource
를 참조하세요.
-