ENGINEER BLOG ENGINEER BLOG
  • 公開日
  • 最終更新日

【Lambda】LambdaでGitコマンドを使用する方法

この記事を共有する

目次

はじめに

皆さんこんにちは!パーソル&サーバーワークスの小泉です。

「LambdaでGitコマンドを使いたい!...でも標準環境じゃ動かない...」そんな問題に直面したことはありませんか?

本記事では コンテナイメージを利用してGitをLambdaで使う方法 を詳しく解説します!

結論

LambdaでGitコマンドを使うには、 コンテナイメージを利用してGitを含める ことで解決できます。
(本記事ではLambdaレイヤーに関しては取り上げません)

コンテナイメージでLambdaを作成する手順

1.ディレクトリ構造

└── my-lambda-container
    ├── Dockerfile
    └── app.py

2. Dockerfileの作成

まずは、Gitが含まれたLambda用のDockerイメージを作成します。

# AWS Lambda用のPython 3.9環境をベースにする
FROM public.ecr.aws/lambda/python:3.9
# 必要なパッケージをインストール
RUN yum install -y git
# 作業ディレクトリを設定
WORKDIR /var/task
# 必要なファイルをコンテナにコピー
COPY app.py .
# Lambdaのエントリポイント
CMD ["app.lambda_handler"]

3. Lambda関数の作成(app.py)

次にLambdaのコードを書いていきます!

import subprocess
def lambda_handler(event, context):
    # Gitの動作確認
    git_version = subprocess.run(["git", "--version"], capture_output=True, text=True)
    return {
        "statusCode": 200,
        "body": f"Git Version: {git_version.stdout.strip()}"
    }

4. Dockerイメージのビルドとプッシュ

ECRにコンテナイメージをプッシュします!

docker build -t my-lambda-container .
aws ecr get-login-password --region <リージョン> | docker login --username AWS --password-stdin .dkr.ecr.<リージョン>.amazonaws.com
docker push .dkr.ecr.<リージョン>.amazonaws.com/my-lambda-repo

5.Lambda関数の作成

AWSのコンソール画面からLambdaを作成します! Lambda

6.動作確認

無事にgitがLambdaにインストールされていることを確認できました! Lambda-test

この記事は私が書きました

小泉 和貴

記事一覧

全国を旅行することを目標に、仕事を頑張っています。

小泉 和貴

この記事を共有する

クラウドのご相談

CONTACT

クラウド導入や運用でお悩みの方は、お気軽にご相談ください。
専門家がサポートします。

サービス資料ダウンロード

DOWNLOAD

ビジネスをクラウドで加速させる準備はできていますか?
今すぐサービス資料をダウンロードして、詳細をご確認ください。