devbase の全コマンドの構文、オプション、使用例をまとめたリファレンスです。
devbase のコマンドは 4 つのグループとトップレベルコマンドで構成されています。
graph TD
A[devbase] --> B[init]
A --> C[status]
A --> D[container / ct]
A --> E[env]
A --> F[plugin / pl]
A --> G[snapshot / ss]
D --> D1[up / down / login / ps / logs / scale / build]
E --> E1[init / sync / list / set / get / delete / edit / project]
F --> F1[list / install / uninstall / update / info / sync]
F --> F2[repo add / repo remove / repo list / repo refresh]
G --> G1[create / list / restore / copy / delete / rotate]
各グループには短縮形が用意されています。
| グループ名 | エイリアス |
|---|---|
container |
ct |
plugin |
pl |
snapshot |
ss |
頻繁に使用するコンテナ操作はトップレベルから直接実行できます。これらは container グループに自動転送されます。
| ショートカット | 転送先 |
|---|---|
devbase up |
devbase container up |
devbase down |
devbase container down |
devbase login |
devbase container login |
devbase build |
devbase container build |
devbase ps |
devbase container ps |
コマンド名が一意に特定できる場合、先頭の数文字だけで実行できます。
# 以下は全て同じコマンド
devbase plugin list
devbase pl list
devbase p l
devbase pl lNote: 一意に特定できない場合は候補が表示されます。
devbase の初期セットアップを実行します。
devbase init
実行内容:
bin/devbaseを PATH に追加(~/.bashrc/~/.zshrc)- シェル補完スクリプトの登録
plugins.ymlの作成(存在しない場合)
現在の環境の状態をまとめて表示します。
devbase status
表示項目:
- コンテナの状態(起動中 / 停止中 / 未ビルド)
- インストール済みプラグイン一覧
- 環境変数の設定状況
- スナップショットの状態
コンテナのライフサイクル管理を行うコマンド群です。
コンテナを起動します。
devbase container up
devbase up
- 起動時にスナップショットを自動作成(新世代 or 差分追加)
CONTAINER_SCALEの値に基づいてコンテナ数を決定- イメージの自動準備:
build:定義あり、イメージ未存在 →devbase buildを自動実行build:定義あり、イメージが7日以上古い →devbase build --no-cacheで再ビルドimage:のみ(公開イメージ)、未存在 →docker pullを自動実行image:のみ、前回 pull から7日以上経過 →docker pullで再取得 (前回 pull 日時は${DEVBASE_ROOT}/.cache/pulls/<image>の touch-file mtime で判定)- 閾値は
DEVBASE_IMAGE_MAX_AGE_DAYS環境変数で上書き可能(既定 7、不正値は警告して既定値)
コンテナを停止・削除します。
devbase container down
devbase down
- 停止時にスナップショットのローテーションを自動実行
コンテナにログインします。
devbase container login [index]
devbase login [index]
| パラメータ | 必須 | デフォルト | 説明 |
|---|---|---|---|
index |
いいえ | 1 |
ログインするコンテナの番号 |
# 1番目のコンテナにログイン
devbase login
# 2番目のコンテナにログイン
devbase login 2コンテナの状態を表示します。
devbase container ps [-a]
devbase ps [-a]
| オプション | 説明 |
|---|---|
-a |
停止中のコンテナも表示 |
コンテナのログを表示します。
devbase container logs [-f] [--tail N]
| オプション | 説明 |
|---|---|
-f |
ログをリアルタイムで追跡 |
--tail N |
末尾 N 行のみ表示 |
# 最新50行をリアルタイムで追跡
devbase container logs -f --tail 50既存のコンテナを再起動せずにスケールします。
devbase container scale <num>
| パラメータ | 必須 | 説明 |
|---|---|---|
<num> |
はい | コンテナ数 |
# コンテナを3台に増やす
devbase container scale 3
# コンテナを1台に減らす
devbase container scale 1コンテナイメージをビルドします。
devbase container build [image]
devbase build [image]
| パラメータ | 必須 | 説明 |
|---|---|---|
image |
いいえ | ビルドするイメージ名(省略時は全イメージ) |
環境変数の管理を行うコマンド群です。詳細は 環境変数ガイド を参照してください。
環境変数の対話式初期セットアップを実行します。
devbase env init [--reset]
| オプション | 説明 |
|---|---|
--reset |
既存の設定をリセットして再設定 |
ソースファイル(~/.aws/config 等)の変更を検出し、環境変数を再同期します。
devbase env sync
設定済みの環境変数を一覧表示します。
devbase env list [-g|-p] [-r] [-k]
| オプション | 説明 |
|---|---|
-g |
グローバル変数のみ表示 |
-p |
プロジェクト変数のみ表示 |
-r |
値も表示(デフォルトではキーのみ) |
-k |
キー名でソート |
# グローバル変数のみ、値付きで表示
devbase env list -g -r
# プロジェクト変数をキー名順で表示
devbase env list -p -k環境変数を設定します。
devbase env set KEY=VALUE [-p]
| オプション | 説明 |
|---|---|
-p |
プロジェクトレベルに設定(デフォルトはグローバル) |
# グローバルに設定
devbase env set ANTHROPIC_API_KEY=sk-xxx
# プロジェクトレベルに設定
devbase env set GCP_ACTIVE_PROFILE=my-project -p環境変数の値を取得します。
devbase env get KEY
devbase env get AWS_PROFILE環境変数を削除します。
devbase env delete KEY
デフォルトエディタで .env ファイルを開きます。
devbase env edit
プロジェクト固有の環境変数を対話式で設定します。
devbase env project
プラグインの管理を行うコマンド群です。
インストール済み、または利用可能なプラグインを一覧表示します。
devbase plugin list [--available]
| オプション | 説明 |
|---|---|
--available |
リポジトリから取得可能なプラグインを表示 |
プラグインをインストールします。
devbase plugin install <source>
ソースの指定形式:
| 形式 | 説明 | 例 |
|---|---|---|
| 名前のみ | 登録済みリポジトリから検索 | devbase plugin install adminer |
| リポジトリ直接指定 | 特定リポジトリのプラグイン | devbase plugin install user/repo:plugin-name |
| 全プラグイン一括 | リポジトリの全プラグインをインストール | devbase plugin install user/repo --all |
| ローカルリンク | ローカルディレクトリからリンク | devbase plugin install /path:plugin-name --link |
プラグインをアンインストールします。
devbase plugin uninstall <name>
プラグインを最新バージョンに更新します。
devbase plugin update [name]
| パラメータ | 必須 | 説明 |
|---|---|---|
name |
いいえ | 更新するプラグイン名(省略時は全プラグイン) |
プラグインの詳細情報を表示します。
devbase plugin info <name>
プロジェクトのシンボリックリンクを再同期します。
devbase plugin sync
プラグインリポジトリを登録します。
devbase plugin repo add <url>
# GitHub ショートハンド
devbase plugin repo add user/repo
# 完全な URL
devbase plugin repo add https://github.com/user/repo.gitリポジトリの登録を削除します。
devbase plugin repo remove <name>
登録済みリポジトリの一覧を表示します。
devbase plugin repo list
プラグイン一覧をリポジトリから再取得します。
devbase plugin repo refresh [name]
| パラメータ | 必須 | 説明 |
|---|---|---|
name |
いいえ | 更新するリポジトリ名(省略時は全リポジトリ) |
スナップショットの管理を行うコマンド群です。詳細は スナップショットガイド を参照してください。
スナップショットを作成します。
devbase snapshot create [--name NAME] [--full]
| オプション | 説明 |
|---|---|
--name NAME |
スナップショット名を指定(デフォルトはタイムスタンプ) |
--full |
フルバックアップを強制作成 |
# 自動命名で差分スナップショット
devbase snapshot create
# 名前付きフルバックアップ
devbase snapshot create --name before-upgrade --fullスナップショットの一覧を表示します。
devbase snapshot list
スナップショットから復元します。
devbase snapshot restore <name> [--point N]
| パラメータ / オプション | 必須 | 説明 |
|---|---|---|
<name> |
はい | 復元するスナップショット名 |
--point N |
いいえ | N 番目の差分まで復元(省略時は最新まで全適用) |
Warning: 復元前に現在の状態が
pre-restore-<timestamp>として自動バックアップされます。
スナップショットをコピーします。
devbase snapshot copy <name> <new_name>
スナップショットを削除します。
devbase snapshot delete <name>
古い世代のスナップショットを削除します。
devbase snapshot rotate [--keep N]
| オプション | 説明 |
|---|---|
--keep N |
保持する世代数(デフォルト: 3) |