Linux 向け仮想マシン
CircleCI では、Docker のバージョンごとに事前に仮想マシン (VM) を構成し、一般的なツール群を
インストールして提供しています。また、C++、JavaScript、.NET、PHP、Python、Android、Ruby
など、Linux 上でのビルドに使用可能なあらゆる言語をサポートしています
毎回プロビジョニング済みの新しい VM で実行
ジョブごとに新しい環境を使用できるので、VM の起動処理に時間を割く必要はありません。VM の内容をキャッシュし、別のジョブで再利用することも可能です。
Docker CLI を完全サポート
必要に応じて VM 内で `docker` コマンドを実行し、ジョブの一環としてイメージをビルドしプッシュすることができます。
Android アプリ開発に対応した継続的インテグレーション (CI)
Android アプリの開発にも対応しています。最初からバグのないアプリをリリースし、星 1 つのレビューをなくしましょう。詳しくはこちら。
Linux 仮想マシンの自動プロビジョニングにより
環境をカスタマイズ
もう Docker in Docker の制約で苦労することはありません。いつでも Linux のフル仮想マシンでジョブを実行できます。CircleCI の Linux 仮想マシンは、実行したいジョブ専用に自動的にプロビジョニング
され、設定ファイルにほんの 1 行記述するだけで他の Docker ジョブに簡単に統合できます。以下の構成例をご覧ください。
Docker 内から利用できないシステム リソースにアクセスしたい場合には、フル仮想マシンでジョブを実行できます。
Docker の制約が障壁となる場合には、Docker 内でフル仮想マシンを実行することが可能です。
version: 2
jobs:
build:
machine: true
steps:
- checkout
- run: docker login -u $DOCKER_USER -p $DOCKER_PASS
- run: docker build -t orgname/image:tag .
- run: docker push orgname/image:tag
ジョブを任意の Docker イメージで実行することも、Linux のフル仮想マシンを使用することも可能です。
また、Docker ジョブ内からクリーンな Linux 仮想マシンに接続することで、両者を組み合わせることもできます。
version: 2
jobs:
build:
machine: true
steps:
- checkout
- run: docker-compose build
- run: docker-compose up -d