Google、Dockerデーモンに依存せずコンテナイメージをビルドできる「kaniko」オープンソースで公開

2018年4月19日

Googleは、Dockerデーモンに依存せず、ユーザー空間内でDockerfileからコンテナイメージをビルドできるツール「kaniko」をオープンソースで公開しました

kaniko

通常、Dockerfileからコンテナイメージをビルドするには、Dockerデーモンにアクセスする必要があります。Dockerデーモンは実行にルート権限を必要とするため、ルート権限に簡単にアクセスできない環境、例えばKubernetesクラスタ内のDockerコンテナ環境などではコンテナイメージのビルドが難しいとされてきました。

オープンソースで公開されたツール「kaniko」は、この課題を解決するために開発されたとGoogleは説明しています。

With kaniko, we both build an image from a Dockerfile and push it to a registry. Since it doesn’t require any special privileges or permissions, you can run kaniko in a standard Kubernetes cluster, Google Kubernetes Engine, or in any environment that can’t have access to privileges or a Docker daemon.

kanikoを用いることで、(ルート権限へのアクセスがあってもなくても)どちらでもDockerfileからコンテナイメージをビルドし、レジストリへプッシュできます。というのも、kanikoは特権的なアクセス権限を必要とせず、標準的なKubernetesクラスタやGoogle Kubernetes Engineやそのほか特権的なアクセス権限やDockerデーモンにアクセスできないあらゆる環境でも実行できるからです。

Dockerデーモンに依存せずにコンテナイメージをビルドできるツールはすでにimgorca-buildなどがあります。下記では、kanikoがこの2つとどのように異なるのかについて説明されています。

The img tool builds as an unprivileged user within a container, while kaniko builds as a root user within a container in an unprivileged environment. The orca-build tool executes builds by wrapping runc, which uses kernel namespacing techniques to execute RUN commands. We're able to accomplish the same thing in kaniko by executing commands as a root user within a container.

imgツールはコンテナ内で非特権ユーザーとしてビルドを行いますが、kanikoは非特権環境においてコンテ内でルートユーザーとしてビルドします。orca-buildツールはruncをラッピングすることによりビルドを実行します。これはRUNコマンドを実行するためのカーネル名前空間のテクニックです。 kanikoでは、 コンテナ内でルートユーザとしてコマンドを実行することによって同様のことを成し遂げています。

追記 2018/4/23:最後の和訳の間違いを修正しました。

Tags: Docker Kubernetes コンテナ型仮想化 Google

このエントリーをはてなブックマークに追加
ツイート
follow us in feedly





タグクラウド

クラウド / AWS / Azure / Google Cloud
コンテナ / Docker / Kubernetes
クラウドネイティブ / サーバレス
クラウド障害 / 運用・監視

プログラミング言語 / 開発ツール
JavaScript / Java / .NET / WebAssembly
HTML/CSS / Web標準

アジャイル開発 / スクラム / DevOps / CI/CD
ソフトウェアテスト・品質
ローコード/ノーコード開発

データベース / RDB / NoSQL / 機械学習・AI
Oracle Database / MySQL / PostgreSQL
Office / 業務アプリケーション

ネットワーク / HTTP / QUIC / セキュリティ
OS / Windows / Linux / VMware
ハードウェア / サーバ / ストレージ

業界動向 / 働き方 / 給与・年収
編集後記 / 殿堂入り / おもしろ

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本