DockerとSnapsの違い

自分用の覚書で、認識が間違っているかもしれませんし、歯抜けでまとまっていませんので、ご参考程度で。


DockerとSnapsの違い

Dockerの特徴

  • LinuxやWindowsやmacOSに、Dockerをインストールすることで使用可能。
  • 仮想環境のため、たとえばWindowsでUbuntuを動かすことができる。
  • UbuntuやMariaDB等の「イメージ」が配布されていて、自動ダウンロードして使いたいシステムを動かす事ができる。
  • 「イメージ」は使用したいCPUアーキテクチャに対応したものが必要。x86_64や、arm7l、aarch64等。
  • 使いたいサービスは「コンテナ」で管理できる。コンテナにデータが入る感じ。
  • サービスのポート番号を容易に変更できるので、たとえば1つのPCで複数のMariaDBやWordpress等を動かすことが可能。「分散化」と呼ばれるようです。

メリットは、仮想環境でいろいろなOSでLinuxを動かせること、コンテナでサービスを管理できるため、バックアップ等が簡単な事などでしょうか。

Snapsの特徴

  • Linuxでいろいろなディストリビューションの垣根を超えて利用できる。
  • IoTデバイスを対象に、各種アプリけションをインストールして動かす仕組み。
  • 基本的にサーバ向けでは無いようです。
  • OSの仮想環境とは異なるようです。
  • CPUアーキテクチャに依存しない?(勉強中)
  • 使いたいサービスはsnapコマンドで管理できる。サービスの停止・起動や設定変更など。
  • サービスのポート番号の変更なども、snapコマンドで対応していれば可能。

メリットはシンプルさでしょうか?サービスのインストール、管理、動作環境も/var/snapにまとめられてシンプルな印象です。


Dockerの「コンテナ」による分散化は、データをバックアップしたりサービスのポートを変更する場合に便利な利点です。

一方、仮想環境が不要な場合は、Snapsでも同様な利点が得られそうな・・・・このあたりは勉強しながら調べてゆきたいと思います。

スポンサーリンク

フォローする

スポンサーリンク