[英]How to access s3 bucket from ec2 instance
我正在嘗試通過ec2實例訪問我的s3存儲桶。 我遵循AWS在線教程。
(Mac)我已經建立了一個ec2實例。 創建了存儲桶,並將某些文件從本地同步到存儲桶。 使用fullS3access為ec2實例創建了一個IAM角色。 然后ssh到ec2實例。 列出s3存儲桶時,可以看到要訪問的存儲桶。 但是我無法使用cd訪問存儲桶。 在實例中,教程使用“ cd s3-demo”行,但我不明白他從何處獲得此名稱,其含義以及在我的情況下的含義。
[Mac]$ aws s3 sync 'folder_name' s3://'bucket_name'/'folder_name'
[Mac]$ ssh -i /Users/../''.pem ec2-user@'public_DNS'
[ec2-user@'public_DNS' ~]$ aws s3 ls
[out]: 'name of the bucket I created'
[ec2-user@'public_DNS' ~]$ cd 'name of the bucket'
[out]: -bash: cd: 'name of the bucket': No such file or directory
這不是S3的工作方式,您需要使用awscli命令為每個請求(PUT,GET等)進行API調用。 以下是一些以以下內容開頭的文檔: https : //docs.aws.amazon.com/cli/latest/reference/s3/cp.html
要以自己的方式訪問它,需要將存儲桶安裝到系統中,然后可以像系統目錄一樣對其進行訪問。 為此,您可以使用s3fs: https : //github.com/s3fs-fuse/s3fs-fuse
Amazon S3是一個對象存儲系統。 它旨在通過API調用進行訪問。
盡管有一些實用程序將S3作為驅動器進行仿真,但是使用此類接口進行生產可能會遇到困難。 (在幕后,它就像您一樣對S3進行API調用。)
相反,我建議您使用AWS Command-Line Interface(CLI) (這只是一個為您進行API調用的Python程序),或者使用AWS SDK作為您首選的編程語言與Amazon S3進行通信。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.