Codex CLI を Ubuntu で動かす — nvm とインストール手順
2026 年 6 月に Codex CLI が v0.14.0 の安定版に到達し、Goal Mode と GPT-5.5 対応を含む大幅なアップデートが続いている(参照: https://openai.com/codex/ )。Ubuntu は多くのバックエンドエンジニアやデータサイエンティストが日常的に使う Linux 環境だが、公式の導入ドキュメントは macOS と Windows を中心に構成されており、Ubuntu 固有の手順が詳しく書かれていない。Node.js のバージョン管理や npm のグローバルインストール権限で詰まるケースを整理し、Ubuntu で Codex CLI を最短で動かすための手順を説明する。
Ubuntu で Codex CLI を動かすには、まず Node.js 22 以上を用意する必要がある。Ubuntu の標準パッケージマネージャー(apt)が配布する Node.js は 18 系止まりのことが多く、バージョン不足でインストールが失敗しやすい。nvm(Node Version Manager)を使えば sudo なしで Node.js を管理でき、グローバルパッケージの権限エラーも回避できる。
インストール自体は npm install -g @openai/codex の 1 コマンドで完了する。その後 OpenAI の管理画面(https://platform.openai.com/api-keys )で API キーを発行し、環境変数 OPENAI_API_KEY に設定するだけで動作を開始できる。Codex CLI の Linux 対応は公式にサポートされており、デスクトップアプリを持たない Ubuntu でも macOS と同等の機能が使える(参照: https://developers.openai.com/codex/cli )。
Ubuntu 固有の注意点として、古い apt 版 Node.js がシステムに残っていると、PATH の優先順位によって nvm 管理の Node.js が使われず codex: command not found になるケースがある。which node でパスを確認し、~/.nvm/versions/... が返ることを確かめてからコマンドを実行すれば、こうした問題のほとんどは解消できる。
目次 (18)
- Ubuntu での Codex CLI 対応状況
- 事前準備 — Node.js のバージョンを確認する
- インストール済み Node.js のバージョン確認
- nvm を選ぶ理由
- nvm のインストール
- Node.js 22 のインストール
- nvm を使った Node.js 22 のセットアップ
- 既存の apt 版 Node.js との共存
- Codex CLI のインストールと API キー設定
- npm によるグローバルインストール
- OpenAI API キーの設定
- 初回起動と動作確認
- サンドボックス設定の確認
- よくある問題と対処 — Ubuntu 固有
- EACCES: permission denied エラー
- codex: command not found
- GLIBC バージョンエラー
- まとめ
Ubuntu での Codex CLI 対応状況
Codex CLI は Node.js 上で動作するツールであり、Linux 環境でも公式にサポートされている。OpenAI の公式ドキュメントには「macOS または Linux」が動作対象と明記されており、Ubuntu 20.04 LTS 以降であれば動作が確認されている(参照: https://developers.openai.com/codex/cli )。
一方で、デスクトップアプリ版は macOS のみの提供となっており、Windows 版は 2026 年 6 月時点ではプレビュー対応にとどまっている。Ubuntu ユーザーにとって CLI 版が事実上唯一の選択肢だ(参照: https://github.com/openai/codex/releases )。
Ubuntu の標準リポジトリで sudo apt install nodejs を実行すると、Ubuntu 22.04 LTS では Node.js 18 系が入る。しかし Codex CLI が要求するバージョンは Node.js 22 以上であり、18 系のまま npm install -g @openai/codex を実行しても、インストール中または実行時にエラーが発生して動作しない。この Node.js バージョンのギャップが Ubuntu での最初の躓きとなりやすい。要件バージョンは Codex CLI のリリースノート(https://github.com/openai/codex/releases )で定期的に確認することを勧める。
事前準備 — Node.js のバージョンを確認する
インストール済み Node.js のバージョン確認
作業に入る前に、現在の Node.js バージョンを確認する。ターミナルを開いて次のコマンドを実行する。
node -v
v22.x.x 以上が表示されれば追加の作業は不要で、そのまま「Codex CLI のインストール」のセクションへ進んでよい。v18.x.x 以下が表示された場合、または -bash: node: command not found が返った場合は、nvm を使って Node.js 22 を導入する手順が必要になる。
Node.js のほかに npm も利用するため、npm -v でバージョンを確認しておく。npm は通常 Node.js に同梱されているが、Ubuntu の古いパッケージ環境では分離インストールが必要なこともある。Node.js 22 を nvm 経由で入れると npm 10 系が同時にインストールされるため、個別に管理する必要はない。
nvm を選ぶ理由
Node.js のバージョン管理ツールとして nvm(Node Version Manager)を使う主な理由は、sudo なしでグローバルパッケージを管理できる点にある。Ubuntu の apt でインストールした Node.js は /usr/lib/node_modules 以下にパッケージを配置するため、グローバルインストール(npm install -g)のたびに sudo が必要になる。これは意図しない権限昇格につながりやすく、ファイルの所有者が混在してトラブルの種になる。
nvm が管理する Node.js はすべてユーザーのホームディレクトリ(~/.nvm)に配置されるため、sudo なしで npm install -g が実行できる。複数の Node.js バージョンをプロジェクトごとに切り替えられる点も便利だ。nvm は GitHub で活発にメンテナンスされており(参照: https://github.com/nvm-sh/nvm )、Ubuntu での利用実績が豊富な標準的な選択肢といえる。
nvm のインストール
nvm を Ubuntu に入れる手順を説明する。
- curl でインストールスクリプトを実行する(スクリプトのバージョンは公式リポジトリで最新を確認する)。
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
- スクリプトが完了すると
~/.bashrc(または~/.zshrc)の末尾に nvm の初期化コードが自動追記される。追記内容を現在のシェルセッションに反映させるため、次のコマンドを実行する。
source ~/.bashrc
nvm --versionを実行してバージョン番号が表示されれば、nvm が正常にインストールされている。
インストールスクリプトの実行に curl が使えない場合は、wget を使う代替コマンドも公式 README に記載されている(参照: https://github.com/nvm-sh/nvm )。curl が未インストールなら sudo apt install curl で導入できる。bash 以外のシェル(zsh・fish など)を使っている場合は、公式ドキュメントの「シェル別セットアップ」を参照してほしい。fish は nvm 非対応のため、nvm.fish のような専用プラグインが必要になる。
Node.js 22 のインストール
nvm を使った Node.js 22 のセットアップ
nvm のインストールが完了したら、Node.js 22 LTS を導入する。
- Node.js 22 をインストールする。
nvm install 22
- インストールした Node.js 22 をアクティブにする。
nvm use 22
- ターミナルを新規に開いても自動で Node.js 22 が使われるよう、デフォルトに設定する。
nvm alias default 22
設定後は node -v で v22.x.x と表示されることを確認する。バージョン番号のマイナー・パッチ部分は nvm がインストール時点での最新安定版を自動的に選択する。特定バージョンを固定したい場合は nvm install 22.x.x のように指定できる。
既存の apt 版 Node.js との共存
apt でインストールした古い Node.js が /usr/bin/node に残っている場合でも、nvm 管理の Node.js は ~/.nvm/versions/node/v22.x.x/bin/ に配置されるため、シェルの PATH 設定が正しければ nvm 側が優先される。which node の出力が /home/<ユーザー名>/.nvm/versions/... であれば nvm 版が使われている。
/usr/bin/node が返る場合は ~/.bashrc の nvm 初期化コードが読み込まれていない可能性がある。cat ~/.bashrc | tail -10 で末尾 10 行を確認し、export NVM_DIR の行が含まれているかチェックする。含まれていなければインストールが途中で失敗しているため、nvm のインストールスクリプトを再実行する。
Codex CLI のインストールと API キー設定
npm によるグローバルインストール
Node.js 22 が有効になったことを確認したら、npm で Codex CLI をグローバルインストールする。
npm install -g @openai/codex
インストールが完了したら codex --version を実行する。バージョン番号(例: 0.14.0)が出力されれば正常にインストールされている。nvm 管理の Node.js 環境では sudo なしで実行できるため、EACCES: permission denied エラーが出ることは基本的にない。エラーが出た場合は後述の「よくある問題」を参照してほしい。
Codex CLI のパッケージは npm の公式レジストリで管理されており、最新バージョンは npm info @openai/codex version で確認できる。新しいバージョンがリリースされたときは npm update -g @openai/codex でアップデートできる(参照: https://www.npmjs.com/package/@openai/codex )。
OpenAI API キーの設定
Codex CLI は OpenAI の API を通じて動作するため、API キーが必要だ。API キーは OpenAI の管理画面(https://platform.openai.com/api-keys )から発行できる。左メニューの「API keys」からキー作成画面に進み、表示されたキーを控えておく(一度しか表示されない)。
発行したキーを環境変数 OPENAI_API_KEY に設定する。現在のセッションのみで有効にする場合は次のコマンドを使う。
export OPENAI_API_KEY="sk-..."
ターミナルを開くたびに自動で設定されるようにするには、~/.bashrc の末尾に追記する。
echo 'export OPENAI_API_KEY="sk-..."' >> ~/.bashrc
source ~/.bashrc
API キーには利用料金が発生する。不要になったキーは管理画面から削除し、リポジトリやチャットにキーを貼り付けないよう注意する。
初回起動と動作確認
API キーを設定したら、シンプルなコマンドで動作を確認する。
codex "hello world を出力する Python スクリプトを作成して"
Codex CLI は対話型インターフェースで動作し、生成されたコードをそのまま実行するかどうかを確認するプロンプトが表示される。y を入力して承認すると処理が進む。初回は OpenAI の利用規約への同意を求める画面が出ることもある。
サンドボックス設定の確認
Codex CLI はファイルシステムへの書き込みやシェルコマンドの実行を制御するサンドボックス機能を持っている。Ubuntu では Docker をインストールしている環境で自動的に強固なサンドボックスが有効になる(参照: https://developers.openai.com/codex/cli )。Docker が未インストールの環境では --sandbox-mode off フラグを使ってサンドボックスを無効にして動作確認できる。
codex --sandbox-mode off "現在のディレクトリのファイル一覧を出力して"
本番に近い開発環境では、意図しないファイル変更を防ぐためにサンドボックスを有効にして運用することを検討する。sandbox_mode の設定は ~/.codex/config.toml でプロジェクトごとにも指定できる(参照: https://developers.openai.com/codex/config-reference )。
よくある問題と対処 — Ubuntu 固有
EACCES: permission denied エラー
npm install -g @openai/codex で EACCES: permission denied が出る場合は、nvm 管理ではなく apt やシステムの Node.js が使われている可能性がある。次の手順で原因を確認する。
which nodeを実行して、パスが/home/<ユーザー名>/.nvm/versions/...を指しているかを確認する。/usr/bin/nodeや/usr/local/bin/nodeが返る場合は、source ~/.bashrcを実行してから再試行する。- それでも変わらない場合は
echo $NVM_DIRを実行し、/home/<ユーザー名>/.nvmが返るか確認する。空欄なら nvm の初期化コードが~/.bashrcに追記されていない。
codex: command not found
インストール後に codex: command not found が出る場合も PATH の問題だ。nvm use 22 を実行してから再度 codex --version を試す。それでも解決しない場合は echo $PATH を実行し、~/.nvm/versions/node/v22.x.x/bin が含まれているかを確認する。nvm alias default 22 の設定が抜けていると、ターミナルを再起動するたびにデフォルト Node.js が変わってしまい、このエラーが繰り返し起きる。
GLIBC バージョンエラー
Ubuntu 18.04 などの古い環境では、Node.js 22 のバイナリが要求する GLIBC のバージョンが不足してエラーになることがある。ldd --version で GLIBC のバージョンを確認し、2.27 未満であれば Ubuntu のアップグレードを検討する。Ubuntu 20.04 LTS 以降では GLIBC の要件を満たすため、このエラーが発生することはほぼない。Ubuntu のサポート期限(https://ubuntu.com/about/release-cycle )を考慮すると、20.04 または 22.04 LTS への移行が現実的な対処法だ。
まとめ
Ubuntu で Codex CLI を動かすための手順は、大きく 4 つのステップで完結する。
- nvm をインストールして Node.js バージョン管理を整える
nvm install 22とnvm alias default 22で Node.js 22 を導入するnpm install -g @openai/codexで Codex CLI をグローバルインストールする- 環境変数
OPENAI_API_KEYに OpenAI の API キーを設定する
デスクトップアプリが提供されていない Linux 環境でも、CLI 版であれば macOS や Windows と同等のコーディング支援機能が使える。Goal Mode を有効にすれば長時間の自律実行タスクも Ubuntu 上でそのまま動かせる(参照: https://developers.openai.com/codex/cli )。公式ドキュメント(https://developers.openai.com/codex/cli )と GitHub リリース(https://github.com/openai/codex/releases )を定期的に確認し、Node.js の要件バージョン変更に追いつくことで、安定した環境を維持できる。