You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Different Types of Packaging

Binary / Standalone

A binary or standalone package usually consists of a .zip or .tar.gz file that will first need to extracted.  After extraction, a binary or script is executed to run the application. 

Pros

  • No additional software should need to be installed.
  • Does not require any specific hardware support.
  • Does not require internet access for installation. 
  • Performance is great.
  • Easiest to install.

Cons

  • Specific binaries need to be created for each OS supported.
  • No easy way of getting updates.
  • Requires extra effort from software maintainers to put the standalone package together.

Installer Packages

Installer packages consist of platform specific packages that, when executed, install the application to a specific directory and also can run some post installation configuration.  File extensions typically are .exe or .msi for Windows and .deb or .rpm for linux. 

Pros

  • Does not require any specific hardware support.
  • Performance is great.
  • Easily updated if configured to use a repository.
  • Easy to install using native OS tools.

Cons

  • May require extra software dependencies.
  • Packages are specific to OS.
  • Installation Requires internet Access.

Virtual Machine Image

Virtual machine images consist of a base operating system with the application preinstalled and preconfigured.  This is then distributed as a .ova or .vmdk files. 

Pros

  • Does not require a specific base OS.
  • Easy to install.
  • Easy to upgrade after initial install. (If updating packages in the virtual machine.)

Cons

  • Requires VM software to be installed (e.g. VirtualBox)
  • Requires Hardware support 
  • Performance is not as good as native.

Docker image

A docker images consists of virtual container containing a minimal OS and the application pre installed and preconfigured.  The most common form of distribution is in a source repository, or through Docker Hub.

Pros

  • Performance is very close to native.
  • Easy to get new updates once installed.

Cons

  • Requires docker and base os it be installed before running image.
  • Requires Hardware support on non linux OS.
  • Host OS and image OS must match. (e.g. Linux os will run only linux images.)
  • Requires internet access to get base image

 

Packaging SolutionRequires Additional SoftwareRequires Hardware SupportRequires Operating System SupportRequires Internet AccessPerformance(1-5)Ease of Install(1-5)Easy to update
Standalone BinaryNoNoStandalone is specific to OSNo55No
Installer PackagesYes, dependenciesNoPackages are specific to OSYes54Yes
Virtual Machine ImagesYes, VM softwareYes, AMD-V or VT-xNoNo34Yes*
Docker ImagesYes, docker and OS imgYes, if using boot2dockerHost os and docker OS must matchYes4.52Yes

How to decide flow chart


 

  • No labels