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:最後の和訳の間違いを修正しました。

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

カテゴリ Docker / コンテナ / 仮想化
タグ  Docker , Google , Kubernetes


次の記事
オラクル、JavaやJavaScript、Ruby、Pythonなど多言語対応を単一ランタイムで実現する「GraalVM」をオープンソースで公開。Twitterが本番環境で採用

前の記事
Kubernetesを統合した「Docker Enterprise Edition 2.0」正式版リリース。コンテナランタイム、オーケストレーション、ネットワーク機能などを含む総合コンテナソリューション


カテゴリ



Blogger in Chief

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

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



新着記事 10本


PR - Books


fig

fig

fig