Practical guides5 min read

UbuntuでMonkeyCodeを導入:事前確認から受け入れまで

直接の答え

Ubuntuで検証した事前確認スクリプト、版付きのインストーラー観測、具体的な手順、期待される検証と部分失敗からの復旧。

**検証済みの範囲:**9月8日にUbuntu 24.04.4 LTS ARM64コンテナーで事前確認が成功しました。入口のダウンロードと構文確認が通り、v260904 と表示されました。製品全体、ログイン、開発ホスト、復元は導入・検証していません。

1. 独立した評価ホストを準備

READMEの公開最小値はコンソールが2コア・4 GB・40 GB、開発ホストは別に8コア・16 GB・100 GBです。同時実行数の保証ではなく、事前確認コンテナーは両方の代替になりません。

破棄可能なUbuntu VMを使い、コンソールアクセスとスナップショットを確保します。アーキテクチャ、空き容量、ネットワーク経路を記録します。必要なOSツールを入れ、読み取り中心の事前確認を実行します。

sudo apt-get update
sudo apt-get install -y curl ca-certificates procps
curl -fL https://monkeycode.cc/examples/ubuntu-preflight.sh -o ubuntu-preflight.sh
less ubuntu-preflight.sh
bash ubuntu-preflight.sh

OS、CPU、メモリー、ストレージ、構文成功、版の表示を確認します。実際の出力を参照できます。製品サービスは作成しません。

2. 現行インストーラーを確認

mkdir -p "$HOME/monkeycode-evaluation"
cd "$HOME/monkeycode-evaluation"
set -euo pipefail
ENTRY_SHA='35155b7fc3612da582334a7edb7f5790ee641d41fa4e9e6203dd09ee6f1791f7'  # 2026-10-09 に確認した入口スクリプトの sha256
curl -fL https://monkeycode-ai.com/online/install -o install.sh
echo "$ENTRY_SHA  install.sh" | sha256sum -c -    # 入口スクリプトが変わればここで停止
grep -E '^VERSION=|^[A-Z0-9_]+_URL=' install.sh   # インストールされる版とアーキテクチャ別パッケージ URL を読み出す

case "$(uname -m)" in                            # 記録した値が固定点
  x86_64)        ARCH=amd64; PKG_SHA='6dd439a994920e435137101a8953ec0843131110f07eb6ef48877c98d05344c4' ;;
  aarch64|arm64) ARCH=arm64; PKG_SHA='ad42bf3ed93a651fb98652374ae44bd870b29288beed04e8cd28c8d2d18e1d35' ;;
  *) echo "unsupported architecture: $(uname -m)" >&2; exit 1 ;;
esac
PKG_URL="$(grep -E "^${ARCH^^}_URL=" install.sh | head -n1 | cut -d= -f2- | tr -d '\"')"
curl -fL "$PKG_URL" -o "monkeycode-online-linux-$ARCH.tgz"
echo "$PKG_SHA  monkeycode-online-linux-$ARCH.tgz" | sha256sum -c -   # 不一致なら停止し、何も解凍されない
tar -xzf "monkeycode-online-linux-$ARCH.tgz"
python3 - "$ARCH" "monkeycode-online-linux-$ARCH/manifest.json" <<'PY'
import hashlib, json, os, sys
arch, path = sys.argv[1], sys.argv[2]
m = json.load(open(path))
assert m['version'] == 'v261009', m['version']
assert m['arch'] == arch, m['arch']
compose = os.path.join(os.path.dirname(path), 'docker-compose.yml')
assert hashlib.sha256(open(compose, 'rb').read()).hexdigest() == m['compose_sha256']
print('manifest ok:', m['version'], m['arch'], m['commit'])
PY
cd "monkeycode-online-linux-$ARCH" && sudo ./install.sh   # 入口スクリプトが最終的に呼ぶインストーラー

最後の行の前にファイルを読んでください。入口スクリプトは可変のダウンローダーでバージョン固定ではなく——2026-10-09 の同日に v260904 から v261009 へ移動しました——固定すべき対象はアーキテクチャ別パッケージです。コマンドは順に実行します:入口スクリプトのハッシュ → uname -m によるアーキテクチャ選択 → パッケージ checksum → manifest(バージョン、arch、compose ハッシュ)。set -e と sha256sum -c により、不一致は解凍や実行の前に非ゼロ終了します(この流れは実測済み:正しいパッケージは通過、1 バイト改変は阻止され解凍されない、未対応の uname -m は終了)。2026-10-09 に確認した v261009: amd64 6dd439a994920e435137101a8953ec0843131110f07eb6ef48877c98d05344c4、arm64 ad42bf3ed93a651fb98652374ae44bd870b29288beed04e8cd28c8d2d18e1d35。パッケージはリリース識別子・compose ファイル・宣言された base-resources の checksum を固定しますが、すべてのオンライン依存を凍結するものではありません:コンテナイメージはタグ参照で、インストーラーは実行時にリソースを取得します。確認済みパッケージと checksum を自組織のストレージに保管し、インストーラーが取得した内容を記録してください。署名付き URL は失効し(今回の確認分は 2026-10-09 13:35 UTC)、同じリリースの再現は同じ sha256sum -c の行で保管パッケージを再検証して再実行します——入口スクリプトを取り直して VERSION を照合することはバージョン固定の代わりにはなりません。ローカルハッシュは確認したファイルの記録で、ベンダー署名ではありません。資格情報が出れば非公開で保存します。

3. 生成された設定に従う

実際の出力のアドレスとサービス説明を使います。ポート、初期パスワード、systemd名は推測しません。コンソールと開発ホストを設定し、例のリポジトリと利用可能なモデル経路を接続します。依存取得とテスト実行を確認します。

4. チームコードの前に受け入れ

最初のタスクをクローンから差分レビューまで実行します。環境再起動後にファイルと結果を再確認し、導入版、イメージ版、設定場所、その版のバックアップ・復元手順を保存します。

復旧

root、OS、アーキテクチャ拒否は前提不足です。ダウンロード失敗なら新しい入口とネットワークを確認します。部分導入なら出力を調べ、使い捨てVMをスナップショットへ戻して再試行します。繰り返し実行が安全とは仮定しません。別の独立ホストで復元を確認してから本番可否を判断します。

Cookie 設定

分析目的(GA4・Matomo)のみにクッキーを使用します。広告やクロスサイト追跡は行いません。