デベロッパー
ドキュメント
ログイン
ホーム
ホーム
イメージ
イメージ
  • cimg/python
  • 使用方法
  • 内容物
  • イメージ タグ
  • Variants
    • Node.js
    • ブラウザー
  1. コンビニエンス イメージ
  2. cimg/python

cimg/python

Sections

このイメージは、従来の CircleCI 製 Python イメージ circleci/python の後継となるものです。

cimg/python は、継続的インテグレーションでのビルドを想定して CircleCI が作成した Docker イメージです。 各タグでは、pyenv で取得した特定のバージョンの Python 一式が含まれ、 pip、pipenv、poetry が事前インストールされます。また、CircleCI 環境でビルドを正常に完了させるために必要なバイナリとツールが含まれています。

使用方法

このイメージは、CircleCI Docker Executor と組み合わせて使用します。 以下に例を示します。

1 2 3 4 5 6 7 jobs: build: docker: - image: cimg/python:3.9.7 steps: - checkout - run: python --version

上記の例では、この CircleCI 製 Python Docker イメージをプライマリ コンテナとして使用しています。 具体的に言うと、3.9.7 というタグで、バージョン v3.9.7 の Python を指定しています。 こうすることで、このジョブのステップ内で Python を使用できます。

内容物

このイメージには、Python プログラミング言語と pip、pipenv、poetry が含まれています。 また、pyenv でインタープリターが取得されるため、ビルド中でも Python バージョンを変更できます。

タグ付けのスキーム

このイメージのタグ付けのスキームは以下のとおりです。

cimg/python:<python-version>[-variant]

<python-version> - 使用する Python のバージョンを指定します。 完全なセマンティック バージョニング形式でポイント リリースを指定するか (3.8.1 など)、またはマイナー リリースを指定できます (3.8 など)。 マイナー リリースを指定した場合は、将来的に Python プロジェクトからパッチ アップデートがリリースされた時点で、そのパッチ アップデートを参照することになります。 たとえば、タグ 3.8 は、執筆時点では Python v3.8.5 を参照しますが、次のリリースが発表された後は v3.8.6 を参照することになります。

[-variant] - 利用可能な場合は、バリアント タグもオプションとして使用できます。 たとえば、cimg/python:3.7-node と指定すると、Node.js バリアントを使うことができます。

イメージ タグ

バリアント

通常、バリアント イメージのベース ソフトウェアは元イメージと同一ですが、いくつかの変更が加えられています。

Node.js

Node.js バリアントのベースは元の Python イメージと同一ですが、こちらでは Node.js もインストールされます。 このバリアントは、-node を既存の cimg/python タグの末尾に追加することで使用できます。

1 2 3 4 5 6 7 8 jobs: build: docker: - image: cimg/python:3.9.7-node steps: - checkout - run: python --version - run: node --version

ブラウザー

ブラウザー バリアントのベースは元の Python イメージと同一ですが、こちらでは apt により Node.js、Java、Selenium、ブラウザーの依存関係が事前インストールされます。 使用するには、-browser を既存の cimg/python タグの末尾に追加します。 このバリアントは、CircleCI Browser-Tools Orb と組み合わせて使用する想定で設計されています。 この Orb を使用すると、任意のバージョンの Google Chrome と Firefox のいずれかまたは両方をビルドでインストールできます。 このイメージには、各ブラウザーおよびそのドライバーを使用するうえで必要なすべてのサポート対象ツールが含まれています。

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 orbs: browser-tools: circleci/browser-tools@1.1 jobs: build: docker: - image: cimg/python:3.7-browsers steps: - browser-tools/install-browser-tools - checkout - run: | python --version node --version java --version google-chrome --version