AWS CLIでファイルをS3へアップロード
AWS CLIでファイルをS3へアップロード クラウドストレージへのファイルアップロードは、現代のシステム開発において欠かせない作業の一つです。特にAmazon S3はその高い信頼性と豊富な機能により、多くのプロジェクト […]
Filter by Category
AWS CLIでファイルをS3へアップロード クラウドストレージへのファイルアップロードは、現代のシステム開発において欠かせない作業の一つです。特にAmazon S3はその高い信頼性と豊富な機能により、多くのプロジェクト […]
Pythonでファイル・ディレクトリを削除する 日付形式のディレクトリを管理していると古いデータを定期的に整理する必要が出てきます。特に画像ファイルなどの日々大量に生成されるデータを扱うシステムでは、ストレージの圧迫を防 […]
GitHub Actionsで Lambdaにデプロイ失敗した原因を調査 GitHub ActionsでLambdaへデプロイ中に発生したエラーを調査し、適切なポリシーの追加と deploy.ymlへのコマンド追加で解消 […]
GitHub ActionsでAWS Lambdaに自動デプロイ DevOpsの実践において、CI / CD(継続的インテグレーション / 継続的デリバリー)は欠かせない要素となっています。特に、クラウドサービスを活用し […]
Pythonのコマンドラインで特定の関数のみを指定して実行する AWS Lambdaではプログラム実行時に関数を指定しますが、pythonコマンドは通常、ファイル単位で指定するのでそのままでは実行できません。そのためロー […]
PythonとGhostscriptでPDFを軽量化 書類の添付などでブラウザからPDFをアップロードする際に数MB以下にしないとアップロードできないことがありますが、印刷用に作成したPDFや複数画像を一枚にまとめたPD […]
Alembicでheadが複数存在する時に発生するエラーの修正 FastAPI, PostgreSQL, Alembicで開発中のプロジェクトで、alembic upgrade headコマンドでマイグレーションを実行し […]
Jetson NanoのWiFiモジュール取り付け手順 Jetson NanoはNVIDIA社が提供するGPUを搭載した小型かつ低電力で動作する開発用ボードです。GPUを搭載しているのでCUDAを使って画像処理などの並列 […]
2024年度 長期インターンシップについて For English page 概要 2024年度 インターンシップの募集を開始します。 募集内容 ・インターンシップ 募集職種 ・機械学習エンジニア・ウェブアプリケーション […]
Announcement about Internships for 2024 日本語のページ Overview Recruitment for the 2024 internship program is now op […]
2023年に最も読まれた記事ランキング あけましておめでとうございます2024年もどうぞよろしくお願いします ファントムは2024年も皆様のお役に立てるよう精進しますより一層のご支援、お引立てを賜りますようお願い申し上げ […]
CodePipelineでCodeBuildのテストを自動化 CodeCommitで管理しているリポジトリをCodeBuildでテストする場合は通常、手動でテストを実行させる必要がありますが、CodePipelineを使 […]
AWS CodeCommitでプルリクエスト・マージ ソースコードの管理にはGitHubやGitLabを採用している方が多いかもしれませんが、AWSにもCodeCommitというサービスがあり、5人までは無料で5人以上で […]
FastAPI + SQLAlchemy + Alembic + SQLiteでマイグレーション FastAPIにはデータベースのマイグレーション機能はありませんが、Alembicというデータベースのマイグレーションツー […]
AWS LambdaとS3、SNSでファイルのアップロードを自動通知 AWS Lambdaは特定の条件を満たすときにサーバーレスでPython(他のプログラミング言語も)を実行できるサービスです。トリガーを検知したときや […]
GitHubリポジトリを別のOrganizationに移行 非公開用のOrganization(組織)で管理していたリポジトリの公開範囲をプライベートから公開に変更するにあたって、リポジトリを別のOrganization […]
PythonとMoviePyで動画ファイルの指定時間ごとの分割を自動化 OpenCVなどで動画の処理を行う際に、1分毎の変化や10分毎に結果を見たいときに一連の動画から指定した時間毎に分割して切り出したいことがあります。 […]
OpenCVで動画ファイルの最終フレームを取得 PythonとOpenCVを使用して動画ファイルの最大フレーム数を取得する方法を解説をします。処理の確認用に取得した最大フレーム数とファイル名をソートして表示させます。 コ […]
Amazon Route 53で新規ドメインを登録 ウェブサイトやウェブサービスを運営する際にドメインは欠かせない要素です。この記事では、Amazon Route 53で新しいドメインを登録する方法について解説します。 […]
GitHub CopilotをPyCharmで使用するまでの手順 GitHub Copilotは、プログラミングの効率を飛躍的に向上させるツールで、開発者にとって非常に便利なコーディングのサポートを提供します。本記事では […]
クラウドストレージへのファイルアップロードは、現代のシステム開発において欠かせない作業の一つです。特にAmazon S3はその高い信頼性と豊富な機能により、多くのプロジェクトでストレージ基盤として採用されています。コマンドラインから操作できるAWS CLIを使えば、ファイルのアップロードを自動化したりバッチ処理に組み込んだりすることも容易です。今回はAWS CLIを使ってS3へファイルをアップロードする基本的な方法を解説します。
初めにファイルのアップロード先となるバケットを作成します。赤枠内の設定の確認と任意のバケット名を入力して「バケットを作成」を押下します。
S3へのアップロード権限を持つユーザーを作成します。ユーザー名を入力して「次へ」を押下します。
作成したユーザーにポリシーをアタッチします。今回はS3の操作のみを許可するユーザーなので、AmazonS3FullAccessにチェックを入れて「次へ」を押下します。
内容を確認して問題なければ「ユーザーの作成」を押下してユーザーを作成します。
「アクセスキーを作成」を押下してAWS CLIの設定に必要なアクセスキーを作成します。
赤枠内にチェックを入れて「次へ」押下します。
説明タグはオプションなので今回は未入力のまま「アクセスキーを作成」を押下して進みます。
S3バケットとIAMユーザーの作成が完了しました。
初めにパッケージの解凍に必要なunzipをインストールします。
sudo apt install unzip
下記コマンドを実行してaws cliをインストールします。
curl "<https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip>" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install
インストールしたバージョンはaws --version
で確認できます。
aws-cli/2.22.4 Python/3.12.6 Linux/6.2.0-1018-aws exe/x86_64.ubuntu.22
aws configure
を実行してアクセスキー情報を設定します。
AWS Access Key ID [None]: ACCESSKEYID
AWS Secret Access Key [None]: SECRETACCESSKEY
Default region name [None]: us-west-2
Default output format [None]:
ACCESSKEYID
, SECRETACCESSKEY
:IAMユーザー登録時にダウンロードしたdbbackup_production_accessKeys.csvの値us-west-2
:バケットを作成したリージョン設定した情報はcat .aws/credentials
、cat ~/.aws/config
で確認できます。
cat .aws/credentials
[default]
aws_access_key_id = ACCESSKEYID
aws_secret_access_key = SECRETACCESSKEY
cat ~/.aws/config
[default]
region = us-west-2
インストールが完了したらascliv2.zipを削除します。
rm -rf awscliv2.zip
S3へファイルをアップロードするには下記コマンドを実行します。
aws s3 cp FILENAME s3://BUCKETNAME/
FILENAME
:S3にアップロードするファイル名(拡張子含む)BUCKETNAME
:作成したバケット名指定したバケットにファイルがアップロードされていることが確認できたら完了です。
群馬県でPythonを使ったAIやソフトウェアを開発している株式会社ファントムが運営しています。
メーリングリストに登録するとファントムの最新情報をお届けします
お客様のメールアドレスを共有することはありません