macOS上でコンテナを利用してLinuxプログラムを動かすツール「Karton 1.0」リリース
Dockerを利用してmacOSやLinux上でLinuxプログラムを動かすKartonプロジェクトが「Karton 1.0」を公開した。
Kartonを利用することで、Dockerコンテナを利用してLinuxプログラムをmacOSやほかのLinuxディストリビューションで動かすことができる。macOS以外にはARM v7、ARM v8、x86_64ホストに対応、Ubuntu、Debian、Fedora、CentOSイメージで動く。
数秒でイメージ内でプログラムを起動できるという高速性を持ち、仮想マシンやコンテナを起動させたり停止させることなく透明性がある形でプログラムを動かすことができる。
ファイルとディレクトリを自動でハンドリング・共有できるため、ファイルは既存のシステムとイメージ内で動かしているプログラムの両方からアクセスできるという。また、あるターミナルでプログラムを開始し、gdbで他のターミナルに紐づけるなどのこともできる。
なお、Kartonの開発者はセキュリティを目的にKartonを利用することについては、Dockerは仮想マシンほど安全ではないこと、想定して開発したのではないことなどを理由に推奨していない。Kartonは特権モードでDockerを使っており、コンテナは安全ではない機能にアクセス可能だという。
1.0では、Fedoraイメージとyumの問題修正など、安定性を強化した。macOS上のファイルシステムの一貫性を設定可能となり、ディスクアクセスを高速化した。環境変数をコマンドラインで設定可能となった。
また、イメージの期間中に様々なポイントでコマンドを動かすことができるDefinitionProperties.run_commandなど新しいコマンドも加わった。
KartonはプロジェクトのWebサイトより入手できる。ライセンスはLGPLv2.1。
Karton
https://karton.github.io/