Skip to content
This repository has been archived by the owner on Jun 16, 2021. It is now read-only.

Proposal: libcompose-cli service commands (Experimental) #157

Open
kunalkushwaha opened this issue Feb 22, 2016 · 4 comments
Open

Proposal: libcompose-cli service commands (Experimental) #157

kunalkushwaha opened this issue Feb 22, 2016 · 4 comments

Comments

@kunalkushwaha
Copy link
Contributor

Background

docker compose/libcompose helps in managing multi-container apps. But for managing such apps, user need to know, config of each app and its location.
Whereas IMHO, once application instance is created, it belongs to Docker System. So it management should be independent of location of config file, which was used for its creation.

Current Solutions

Solutions like UCP, Kitematic and other third party GUI (Mostly) solution provides solution for working on services.
But none of them works for command line users.

Why libcompose?

Since, libcompose is targeted as library for third party solutions, implementing such feature ensures, workflow and compatibility of service management consistent across all.

Proposal.

With libcompose-cli create/up/scale commands, yml configuration of services, yml configuration of services can be copied to compose-repo , with few extra attributes

  • libcompose-cli rm command will remove the yml configuration of removed services.

compose-repo: (default) folder on local file-system (~/.compose/), configurable in ~/.compose.yml .

  • A plugin based storage interface enable to store config on cloud / git/ consul etc

New commands

  • libcompose-cli service ls : List all services in system and its state (Running/Stopped/Down)
  • libcompose-cli service show [service-name]: Show details of service. Output similar to libcompose ps
  • libcompose-cli service stop/rm/start/ etc : These commands parallel to libcompose stop/rm/start etc.
  • libcompose-cli service history: While application life cycle, on events of changes like ports/ network/ storage/scale can be recorded in history files. Such data can be profiled here and shown.
    • could be helpful in troubleshooting.
  • libcompose-cli service version: [Need more thoughts] This could be a new feature itself, where multiple versions of one application can be created. So new version can be deployed and one error, rollback.
@kunalkushwaha
Copy link
Contributor Author

@vdemeester Please share your thoughts on this.

@vdemeester
Copy link
Collaborator

hey @kunalkushwaha, as much as I would like it or talk about it, until 1.0.0, I want us to focus on being full compatible with docker-compose. But I'm more than open to discuss about that and if we would implement it here.

For reference, docker/compose#656 and docker/compose#1953 which is on the way (#156).

@vdemeester
Copy link
Collaborator

Now that there is some service commands on docker/docker, we'll have to see how compose evolves on it, but even though, I'm definitely looking forward to integrate with it somehow 👼

@kunalkushwaha
Copy link
Contributor Author

I agree.
I think this is now not required. The whole idea services in compose is now available with docker service command.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants