UbuntuでPython pipをインストールして使う方法

開発環境

UbuntuでPythonのパッケージ管理ツール「pip」をインストールして使う方法を解説します。結論から言うと、sudo apt install python3-pip でインストールできますが、Ubuntu 24.04 LTS では PEP 668 の仕様変更により、pip で直接パッケージをインストールしようとするとエラーが発生します。この記事では実際に Docker コンテナで検証した結果をもとに、正しい使い方と詰まりやすいポイントを丁寧に説明します。

本記事では ubuntu:24.04 / ubuntu:22.04 の Docker 公式イメージで実際にコマンドを実行し、その結果を載せています。

この記事のポイント

  • sudo apt install python3-pip で pip をインストールできる(Ubuntu 24.04 では pip 24.0)
  • Ubuntu 24.04 では pip install 直打ちすると「externally-managed-environment」エラーが出る(PEP 668)
  • 正しい解決策は python3 -m venv で仮想環境を作ってから pip install する
  • Ubuntu 22.04 と 24.04 では Python・pip のバージョンが異なる(実測確認済み)
  • 本番VPSで Python 開発をするなら仮想環境の使い方が必須スキル

目次

  1. 前提環境・確認済みバージョン
  2. pip のインストール手順(Ubuntu 24.04)
  3. Ubuntu 24.04 で pip install するとエラーが出る理由(PEP 668)
  4. 正しい使い方:仮想環境(venv)で pip install する
  5. pip の基本的な使い方
  6. Ubuntu 22.04 と 24.04 の違い(実測比較)
  7. よくあるエラーと解決策
  8. まとめ

前提環境・確認済みバージョン

本記事のコマンドは以下の環境で実際に動作確認しています。

項目
実行環境 Docker 公式イメージ ubuntu:24.04
Ubuntu バージョン 24.04 LTS (Noble Numbat)
Python バージョン 3.12.3(apt でインストール)
pip バージョン 24.0(apt install python3-pip)
確認日 2026-06-13

注意

本記事のコマンドは Ubuntu 24.04 LTS で検証しています。Ubuntu 22.04 でも基本手順は同じですが、PEP 668 の制限はないため、pip install の挙動が異なります(バージョン比較セクションを参照)。

pip のインストール手順(Ubuntu 24.04)

Ubuntu 24.04 の新規インストール環境(Docker 公式イメージ含む)では、pip は最初から入っていませんapt で明示的にインストールする必要があります。

手順1:パッケージリストを更新する




ubuntu@linuxlab: ~
$ sudo apt update
Get:1 http://ports.ubuntu.com/ubuntu-ports noble InRelease [256 kB]
Get:2 http://ports.ubuntu.com/ubuntu-ports noble-updates InRelease [126 kB]

Reading package lists… Done
Building dependency tree… Done

正直、apt update を忘れがちですが、これをやらないと古いバージョンが入ることがあります。インストール前に必ず実行してください。

手順2:python3-pip をインストールする




ubuntu@linuxlab: ~
$ sudo apt install -y python3-pip
Reading package lists… Done
Building dependency tree… Done
The following NEW packages will be installed:
python3-pip python3-pip-whl …
Setting up python3-pip (24.0+dfsg-1ubuntu1) …

手順3:インストールを確認する




ubuntu@linuxlab: ~
$ pip3 –version
pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)
$ python3 –version
Python 3.12.3

pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12) と表示されれば成功です。Ubuntu 24.04 では Python 3.12.3 と pip 24.0 の組み合わせが標準です。

apt install python3-pip の実行ログ(Ubuntu 24.04 LTS / 実測)
apt install python3-pip の実行ログ(Ubuntu 24.04 LTS / 実測)

Ubuntu 24.04 で pip install するとエラーが出る理由(PEP 668)

pip がインストールできたので早速 pip3 install requests を実行してみましょう。すると、Ubuntu 24.04 では以下のようなエラーが出て止まります




ubuntu@linuxlab: ~
$ pip3 install requests
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try apt install
python3-xyz, where xyz is the package you are trying to install.

If you wish to install a non-Debian-packaged Python package,
create a virtual environment using python3 -m venv path/to/venv.

hint: See PEP 668 for the detailed specification.
Ubuntu 24.04 で pip install した際の PEP 668 エラー(実測)
Ubuntu 24.04 で pip install した際の PEP 668 エラー(実測)
著者アイコン
著者アイコン

Ubuntu 22.04 まではこのエラーは出ませんでした。24.04 にアップグレードして突然 pip が使えなくなった!という人が多いのですが、これは仕様変更です。Python の環境を守るための措置で、解決策は仮想環境(venv)を使うことです。

なぜこのエラーが出るのか

Python 3.11 以降、Debian/Ubuntu 系のディストリビューションでは PEP 668(外部管理環境の保護)が実装されました。これは、システムの Python パッケージ管理を apt に任せ、pip で勝手に上書きされないようにする仕組みです。

Ubuntu 22.04 は Python 3.10 ベースなのでこの制限がありませんでしたが、Ubuntu 24.04 は Python 3.12 ベースなので PEP 668 が適用されます

正しい使い方:仮想環境(venv)で pip install する

Ubuntu 24.04 で pip を使う正しい方法は、仮想環境(venv)を作成してから pip install することです。venv とは Python 専用の隔離された環境で、プロジェクトごとにパッケージを分けて管理できます。

手順1:python3-full をインストールする

venv を使うには python3-full パッケージが必要です(python3-pip だけでは venv が作れない場合があります)。




ubuntu@linuxlab: ~
$ sudo apt install -y python3-pip python3-full
Setting up python3-full (3.12.3-0ubuntu2) …

手順2:仮想環境を作成する




ubuntu@linuxlab: ~
$ python3 -m venv myenv
$ ls myenv/
bin include lib lib64 pyvenv.cfg

myenv はディレクトリ名です。プロジェクト名や用途に合わせて変えてください(例: venv.venvmyproject-env など)。

手順3:仮想環境を有効化する




ubuntu@linuxlab: ~
$ source myenv/bin/activate
(myenv) $ pip –version
pip 24.0 from /home/ubuntu/myenv/lib/python3.12/site-packages/pip (python 3.12)

プロンプトの先頭に (myenv) が表示されれば、仮想環境が有効になっています。

手順4:pip install でパッケージをインストールする




ubuntu@linuxlab: ~
(myenv) $ pip install requests
Collecting requests
Downloading requests-2.34.2-py3-none-any.whl (63 kB)
Installing collected packages: urllib3, idna, charset_normalizer, certifi, requests
Successfully installed certifi-2026.5.20 charset_normalizer-3.4.7 idna-3.18 requests-2.34.2 urllib3-2.7.0
(myenv) $ pip show requests
Name: requests
Version: 2.34.2
Location: /home/ubuntu/myenv/lib/python3.12/site-packages

エラーなしでインストールできました。requests 2.34.2 が myenv/lib/python3.12/site-packages 以下にインストールされており、システムの Python 環境には一切影響していません。

venv を使った pip install の成功ログ(Ubuntu 24.04 / 実測)
venv を使った pip install の成功ログ(Ubuntu 24.04 / 実測)

仮想環境を終了する




ubuntu@linuxlab: ~
(myenv) $ deactivate
$

deactivate コマンドで仮想環境を抜けられます。プロンプトから (myenv) が消えれば完了です。

pip の基本的な使い方

仮想環境を有効にした状態で使える主要な pip コマンドをまとめます。

pip よく使うコマンド一覧
pip よく使うコマンド一覧

①パッケージをインストールする




ubuntu@linuxlab: ~
(myenv) $ pip install requests
# バージョンを指定する場合
(myenv) $ pip install requests==2.31.0
# requirements.txt から一括インストール
(myenv) $ pip install -r requirements.txt

②インストール済みパッケージを確認する




ubuntu@linuxlab: ~
(myenv) $ pip list
Package Version
—————— ———-
certifi 2026.5.20
charset-normalizer 3.4.7
idna 3.18
pip 24.0
requests 2.34.2
urllib3 2.7.0
(myenv) $ pip show requests
Name: requests
Version: 2.34.2
Summary: Python HTTP for Humans.
Location: /home/ubuntu/myenv/lib/python3.12/site-packages

③requirements.txt を作成する

チームで開発する際や VPS に同じ環境を再現したいときは、pip freeze で現在の環境を書き出しておくと便利です。




ubuntu@linuxlab: ~
(myenv) $ pip freeze > requirements.txt
(myenv) $ cat requirements.txt
certifi==2026.5.20
charset-normalizer==3.4.7
idna==3.18
requests==2.34.2
urllib3==2.7.0

④パッケージをアンインストールする




ubuntu@linuxlab: ~
(myenv) $ pip uninstall requests
Found existing installation: requests 2.34.2
Uninstalling requests-2.34.2:
Would remove: /home/ubuntu/myenv/lib/python3.12/site-packages/requests/*
Proceed (Y/n)? Y
Successfully uninstalled requests-2.34.2

Ubuntu 22.04 と 24.04 の違い(実測比較)

Ubuntu 22.04 から 24.04 にアップグレードした場合や、両方の環境を扱う場合は以下の違いを押さえておきましょう。Docker 公式イメージの ubuntu:22.04 と ubuntu:24.04 で実測した結果です。

Ubuntu 22.04 vs 24.04 Python/pip バージョン比較(実測)
Ubuntu 22.04 vs 24.04 Python/pip バージョン比較(実測)
項目 Ubuntu 22.04 LTS (Jammy) Ubuntu 24.04 LTS (Noble)
Python バージョン 3.10.12 3.12.3
pip バージョン(apt) 22.0.2 24.0
pip install の制限 なし(直接インストール可) PEP 668 制限あり(venv 推奨)
venv に必要なパッケージ python3-venv python3-full
サポート期限 2027年4月 2029年4月(最長2034年)

Ubuntu 22.04 では pip3 install を venv なしで直接実行できますが、Ubuntu 24.04 では PEP 668 の制限があります。新しいVPSや環境で作業する際は、まず Ubuntu のバージョンを確認する癖をつけておくといいでしょう。

よくあるエラーと解決策

エラー1:externally-managed-environment(Ubuntu 24.04)




ubuntu@linuxlab: ~
error: externally-managed-environment

原因:Ubuntu 24.04 の PEP 668 制限です。

解決策python3-full をインストールして venv を使う(推奨)か、--break-system-packages フラグを使う(非推奨・システムが不安定になる可能性あり)。




ubuntu@linuxlab: ~
# 推奨:venv を使う
$ sudo apt install -y python3-full
$ python3 -m venv myenv && source myenv/bin/activate
(myenv) $ pip install requests

エラー2:The virtual environment was not created successfully




ubuntu@linuxlab: ~
The virtual environment was not created successfully because ensurepip is not available.
On Debian/Ubuntu systems, you need to install the python3-venv package using the following command.
apt install python3.12-venv

原因python3-pip のみインストールした場合に venv の作成に失敗することがあります。

解決策python3-full をインストールする。




ubuntu@linuxlab: ~
$ sudo apt install -y python3-full
$ python3 -m venv myenv
# 今度は成功する

エラー3:pip3: command not found

原因python3-pip がインストールされていません。

解決策




ubuntu@linuxlab: ~
$ sudo apt update && sudo apt install -y python3-pip python3-full

まとめ

この記事のまとめ

  • Ubuntu 24.04 での pip インストールは sudo apt install python3-pip python3-full が基本
  • Ubuntu 24.04 では PEP 668 により pip install 直打ちが禁止されている(実測確認済み)
  • 正しい手順:python3 -m venv myenvsource myenv/bin/activatepip install <pkg>
  • Ubuntu 22.04 は Python 3.10.12 / pip 22.0.2、Ubuntu 24.04 は Python 3.12.3 / pip 24.0
  • VPSで Python 開発をするなら仮想環境の使い方は必須スキル

pip と venv を使いこなすと、プロジェクトごとに独立した Python 環境を作れるようになり、本番 VPS での開発・デプロイが格段に楽になります。次のステップとして、実際に VPS を借りて Python アプリを動かしてみましょう。

コメント

タイトルとURLをコピーしました