米Dockerはクライアント向けコンテナ基盤「Docker Desktop」の新バージョン「Docker Desktop 4.19」を5月2日(現地時間)に公開した。Docker DesktopはWindows、macOS(Intel/Apple Silicon)、Linuxで動作する。
「Docker Desktop 4.17」ではまず、macOS版でコンテナとホストの通信速度が5倍ほど速くなった。これは、オープンソースの「vpnkit」に代えてGoogleが開発したオープンソースのコンテナサンドボックス「gVisor」を採用したことによる。この改良により、Docker内のネットワークから外に出るネットワーク処理が高速化した。例えば、「npm install」や「apt-get」を実行してインターネット上にあるパッケージをダウンロードしてインストールするときなどに、高速化の効果を感じられるという。
そして、前バージョンである4.18でベータ版として導入した「docker init」コマンドの対応言語が増えた。docker initコマンドは、開発中のソフトウェアプロジェクトに、Dockerで実行するために必要なソフトウェアをまとめて導入するコマンド。バージョン4.18で初めて公開したときは、Go言語にしか対応していなかったが、今回のバージョン4.19からPythonとNode.jsにも対応するようになった。ただし、まだベータ版であることに変わりはない。今後は、Java、Rust、.NETなどの言語に対応していく予定だとしている。
また、バージョン4.17で早期アクセス版として導入した機能「Docker Scout」も改良した。Docker Scoutは、イメージ内のソフトウェアを検索して、脆弱性を発見し、ユーザーに修正方法を提案する機能。開発者自身が書いたコードではなく、使用したライブラリなど、第三者が書いたコードに依存している場合、その部分に脆弱性があると「サプライチェーン攻撃」の標的となってしまう。
バージョン4.19では、開発者のローカル環境に置いてあるDockerイメージだけでなく、Docker Hubに置いてあって、Docker Desktopでアクセスしているイメージも対象に、脆弱性を検索するようになった。
また、Dockerイメージのビルドやコンテナ起動などの機能を持つ「Docker Compose」コマンドがv1からv2に移行する。2023年6月以降は、Docker DesktopをダウンロードしてもDocker composeのv1は付属しない。準備段階として、v1のコマンドを実行すると警告を表示するようになる。現在でもDocker Desktopの設定を変更することで、v2を使うようにすることができる。v2になると、「docker compose」というコマンドで実行することになるが、Docker Desktopの設定を変更することで、v1の頃に使用していた「docker-compose」コマンドでもv2を実行できるようになる。
さらに、Dockerの基盤となるソフトウェア「Moby」のバージョンを23.0にアップグレードした。
- 関連リンク
この記事は参考になりましたか?
- この記事の著者
-
CodeZine編集部(コードジンヘンシュウブ)
CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。
※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です