Docker 0.10リリースドキュメント日本語訳: 品質とOps Tooling

Docker 0.10が出たので例によってリリースドキュメントをざっくり翻訳してみました。間違い等見つけたら指摘お願いします!
個人的には日本人開発者が増えてきて嬉しい限りです:)
Docker 0.10のアップデートまとめ:バグ修正たくさん、シグナルハンドリングの修正、TLS認証サポート、Systemdプラグインサポート
翻訳元:http://blog.docker.io/2014/04/docker-0-10-quality-and-ops-tooling/


Docker 0.10: 品質とOps Tooling

今日はDocker 0.10をご紹介させていただきます。お気に召して頂けると幸いです!

私たちは、今回のリリースにコントリビュートしてくださいましたすべての素晴らしいコミュニティの人たちに御礼申し上げます: Tianon Gravi, Alexander Larsson, Vincent Batts, Dan Walsh, Andy Kipp, Ken Ichikawa, Alexandr Morozov, Kato Kazuyoshi, Timothy Hobbs, Brian Goff, Daniel Norberg, Brandon Philips, Scott Collier, Fabio Falci Rodrigues, Liang-Chi Hsieh, Sridhar Ratnakumar, Johan Euphrosine, Paul Nasrat そして、Dockerのすべての素晴らしい人たちに。

今回のリリースは、Docker 1.0の道のりの次のステップです。品質改善とOps Toolingに優先的に焦点を当てておりチェンジログは特に大きい。

品質

第一に、私たちは1.0が近いため品質に注力し続けてきました。今回リリースでは、1週間のスプリント結果のバグ、テスト改善、ドキュメント、UIの不具合のクリーンアップなどの修正が含まれています。その1周間では、48チケットをクローズし、68 Pull Requestをマージしました。少しサンプルとしてあげると次のとおりです。

  • 新しいintegrationテストハーネスは、コマンドラインインターフェイスのレグレッション防止になります
  • `docker build`中のアウトプットの問題が修正されました
  • 同一マシン上でコンテナの数千を実行している場合の様々なパフォーマンスと安定性の問題が修正されました
  • `docker build`中のシンボリックリンク処理が修正されました
  • `docker build`コマンドは、プライベートGitリポジトリのPull時にクライアントの認証情報を使用できます
  • device mapperストレージへの多数の信頼性とパフォーマンスの向上
  • `docker build`中のキャッシュ問題が修正されました
  • `df`や`mount`や同様のツールをコンテナ内で使用することができます
  • `docker build`は MKNOD を必要とするコマンドを呼び出すことができます
  • 数十のマイナーなドキュメントの改善
  • 全面的により良いテストカバレッジ
  • シェル補完を修正しました
  • tmuxなどのコンソールツールをコンテナ内で使用することができます
  • `docker cp`のコンテンツ検出が修正されました
  • lxc execution driverは、lxc 1.0で動作するようになりました
  • ネットワークポートのハイスループットアロケーションに関する問題が修正されました
  • `docker push`はDocker indexへのpushに、全てのタグの代わりに単一のimageがサポートされました
  • エラーメッセージの内容とボリュームが読みやすくなりました
  • `docker run -volumes-from` に関する問題が修正されました
  • Ubuntuの特定のバージョンのAppArmorの問題が修正されました
  • 競合状態、低速なメモリリークとスレッドリークが修正されました
  • 一部のコマンドの出力を、より予測可能なように並び替えました

見て頂ければわかるように、こうした問題は個々では非常に些細なものです。しかし、全体でみれば大きな違いを生むのです!私たちは次のリリースに関して、大小の問題の修正を継続的に計画しています。あなたがより速く対処してほしい問題があった場合、何時でもissueをopenしたり、既存のissueにコメントしてあなたの興味を表明でき、私たちが注目できるようにしてください!もちろん、私たちはあなたのコントリビュートを求めています。私たちはあなたが指摘する注意が必要な問題に注視いたします。そしてあなたが取り掛かるのをサポートできます。Freenodeの#dockerのIRCチャンネルに来てhiと言ってください!

Ops Tooling

今回のリリースで、私たちは1.0: ops readinessに向けて新フェーズを開始している。プロダクションで使用されるためには、Dockerがクラッシュしないようにするだけでは十分ではありません。これは、システム管理者が現在使っているツールとうまく統合する必要があります。ロギング、システムの初期化、監視、リモート管理、バックアップなど。
明らかに1リリースだけでは、システム管理者フレンドリーな安息の境地に到達することはできません。しかし、0.10ではその方向でいくつかの重要なステップを進めています。

  • Stop behavior: `docker stop` のデフォルトの動作では、"アプリケーションの安全性"の側にエラーになるように変更されています。特に、アプリケーションがSIGTERMシグナルに応答しない場合、SIGKILLによる強制killの代わりにDockerはエラーを返します。これは`docker stop`はthe most criticalや、脆性なアプリケーションでも、データの破損や他の副作用のリスクなしで安全に使用することができることを意味します。(それでも突然の終了でも回復できるようにアプリケーションを設計する必要があることに注意してください - Dockerは電源コードが引っこ抜かれるのは防げませんよ!)
  • Signal handling:Docker デーモン自体は今と同じようにシグナルを処理します。SIGTERMを受信すると、Dockerは実行中のすべてのコンテナにそれを転送し、コンテナが正常に終了するのを待ってからDockerを終了します。コンテナが正常に終了しなかった場合、Dockerは透過的にその動作を公開し、永遠に待機します。外部ツールで 1)更に待機, 2)諦める, 3)SIGKILLによる強制終了 を選択できます。SIGKILLがどのように動作するか注意してください。DockerはアプリケーションにSIGKILLを転送できません。代わりに、次回起動時に"孤立"コンテナを検出し、その際コンテナにSIGKILLを送信します。要するに、コンテナがSIGKILL自体を受信するのを除き、DockerがコンテナにSIGKILLを送信することはありません。
  • TLS認証: 何度もリクエストされている機能は、セキュアな方法で、ネットワーク経由でDocker リモートAPIを公開する機能です。Docker 0.10では、TLS/SSL証明書をビルトインでサポートしました。SSL証明書を使用して特定ホストだけにAPIへのアクセスを制限したりAppropriate証明書を使用してユーザーを制限できます。これは、リモートAPIを確保する上で最初のステップであり、私たちはよりきめ細かいロールベースのアクセス制御だけでなく、将来的には他の認証形式を提供する計画があります。
  • Systemd slices: Dockerは、systemdプラグインをサポートしました。基礎となるホストがsystemdで初期化された場合に自動検出されます。systemdが検出された場合、Dockerはcontrol groupの管理のために、デフォルトでは直接/procディレクトリにアクセスするが、その代わりに自動的に低レベルの systemd APIを使用するようになります。現在、リソースの割り当てを管理するのにsystemdを使用しているシステム管理者にとっては、Dockerコンテナがsystemdに自動的に表示されることを意味します。
  • Release hashes: Dockerのすべてのリリースでは、すべての成果物のビルドにSHA256とMD5ハッシュを含んでいます。これらはドキュメントサイトとダウンロードページに公開されており、あなたのインストールが改ざんされていないことを検証することができます。たとえば、公式のLinuxDarwinバイナリビルドを次のコマンドでSHA256を検証できます。
 curl https://get.docker.io/builds/Linux/x86_64/docker-0.10.0.sha256
 curl https://get.docker.io/builds/Darwin/x86_64/docker-0.10.0.sha256

最後に、近い将来Docker 1.0のリリースに、積極的なDocker 0.10のテストをお願い致します。チケットにログを貼り、あなたのフィードバックをよろしくお願い致します!

サポートやヘルプをしてくださった全ての人に感謝を捧げます, and happy hacking!

The Docker maintainers

翻訳元:http://blog.docker.io/2014/04/docker-0-10-quality-and-ops-tooling/