**DRAFT**
Introduction
Both Docker Compose and Open Horizon are tools for managing the deployment and lifecycle management of containerized applications, but there are significant differences. This article will attempt to explain service software lifecycle management, and then compare and contrast the approaches used by these two tools. This article assumes a basic familiarity with the idea of containerized software.
...
Docker Compose and Open Horizon may then be compared using the above lifecycle stages in a table:
Stages | Docker Compose | Open Horizon |
---|---|---|
Deployment | manually run "docker-compose pull" on destination not typically needed since this is included in intialization | automatically triggered on destination by Agent when an agreement is formed |
Initialization | manually run "docker-compose up" on destination | automatically run on destination by Agent after deployment completes successfully |
Operation | manually run "docker-compose ps" on destination does not otherwise monitor or alert to runtime failures docker-compose up to manually retart if application is updated | Agent automatically monitors running services and implements restarts and rollbacks as needed If a service is updated, agreement is terminated and re-negotiated |
Removal | manually run "docker-compose down" on destination | If an agreement is terminated, Agent will automatically halt and remove running services |
In summary, Docker Compose is a tool for an operator to manually administer the service software lifecycle directly on destination hosts. Open Horizon is a tool for an operator to specify the conditions under which the service software lifecycle should be automatically administered autonomously on each host by the Open Horizon Agent.
...