From 6de7a879261f1f3b3df434c2deabdc7f681567e1 Mon Sep 17 00:00:00 2001 From: "takemi.ohama" Date: Sun, 28 Jun 2026 09:29:08 +0900 Subject: [PATCH 1/2] =?UTF-8?q?feat(base):=20AWS=20Session=20Manager=20plu?= =?UTF-8?q?gin=20=E3=82=92=E3=82=A4=E3=83=B3=E3=82=B9=E3=83=88=E3=83=BC?= =?UTF-8?q?=E3=83=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit aws ssm start-session 等の利用に必要な session-manager-plugin を AWS CLI v2 と同じレイヤーに追加。amd64/arm64 を判定し公式 .deb を導入。 Co-Authored-By: Claude Opus 4.8 (1M context) --- containers/base/Dockerfile | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/containers/base/Dockerfile b/containers/base/Dockerfile index dc27f8a..1d3a995 100644 --- a/containers/base/Dockerfile +++ b/containers/base/Dockerfile @@ -65,6 +65,15 @@ RUN set -eux; \ unzip -q /tmp/awscliv2.zip -d /tmp; \ /tmp/aws/install; \ rm -rf /tmp/awscliv2.zip /tmp/aws; \ + # AWS Session Manager plugin + case "$(dpkg --print-architecture)" in \ + amd64) ssm_arch="ubuntu_64bit" ;; \ + arm64) ssm_arch="ubuntu_arm64" ;; \ + *) echo "Unsupported architecture for session-manager-plugin: $(dpkg --print-architecture)" && exit 1 ;; \ + esac; \ + curl -fsSL "https://s3.amazonaws.com/session-manager-downloads/plugin/latest/${ssm_arch}/session-manager-plugin.deb" -o /tmp/session-manager-plugin.deb; \ + dpkg -i /tmp/session-manager-plugin.deb; \ + rm -f /tmp/session-manager-plugin.deb; \ # gcloud SDK arch="$(uname -m)"; \ case "${arch}" in \ @@ -100,7 +109,7 @@ RUN set -eux; \ ENV PATH="/root/.local/bin:/opt/google-cloud-sdk/bin:${PATH}" # 確認 -RUN gh --version && node --version && npm --version && aws --version && gcloud --version +RUN gh --version && node --version && npm --version && aws --version && gcloud --version && session-manager-plugin --version # ユーザー設定 ARG USERNAME="ubuntu" From a32bc1fabd5759ba59f22f32ec17c1eeaf452714 Mon Sep 17 00:00:00 2001 From: "takemi.ohama" Date: Sun, 28 Jun 2026 09:29:08 +0900 Subject: [PATCH 2/2] =?UTF-8?q?feat(trygroup):=20project-trygroup-prd=20?= =?UTF-8?q?=E7=B3=BB=E5=B0=82=E7=94=A8=E3=82=B3=E3=83=B3=E3=83=86=E3=83=8A?= =?UTF-8?q?=E3=82=92=E6=96=B0=E8=A8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit general ではなく Poetry / pnpm を備えた専用イメージを用意。 Poetry は公式インストーラの独立 venv に導入し uv と非干渉に保つ。 Co-Authored-By: Claude Opus 4.8 (1M context) --- containers/trygroup/Dockerfile | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 containers/trygroup/Dockerfile diff --git a/containers/trygroup/Dockerfile b/containers/trygroup/Dockerfile new file mode 100644 index 0000000..f061442 --- /dev/null +++ b/containers/trygroup/Dockerfile @@ -0,0 +1,28 @@ +# ================================== +# devbase-trygroup: project-trygroup-prd / project-trygroup-prd-customer 専用環境 +# devbase-base を継承し、Poetry と pnpm を追加 +# ================================== + +FROM devbase-base:latest + +# --- root レイヤー: pnpm(npm グローバル) --- +USER root +RUN set -eux; \ + npm i -g pnpm; \ + npm cache clean --force; \ + rm -rf /root/.npm + +# --- user レイヤー: Poetry --- +# uv との競合回避: +# - Poetry は公式インストーラで独立した専用 venv に導入する(uv の管理環境に非干渉) +# - バイナリは ~/.local/bin/poetry、uv は ~/.local/bin/uv で名前衝突なし +# - Poetry の仮想環境は既定の ~/.cache/pypoetry に作成し、 +# uv が使うプロジェクト直下の .venv と分離する(virtualenvs.in-project は false のまま) +USER ubuntu +RUN set -eux; \ + curl -sSL https://install.python-poetry.org | python3 -; \ + ~/.local/bin/poetry --version; \ + rm -rf ~/.cache/pypoetry/cache ~/.cache/pip + +USER ubuntu +WORKDIR /work