docker / app

Make your Docker Compose applications reusable, and share them on Docker Hub
Apache License 2.0
1.57k stars 176 forks source link

Is docker-app status still experimental? #799

Open vlcinsky opened 4 years ago

vlcinsky commented 4 years ago

Docker product page https://www.docker.com/products/docker-app presents this tool without mentioning a word "experimental".

Docker docs page for App https://docs.docker.com/engine/reference/commandline/app_version/ stil warns about being experimental.

My questions are:

kinghuang commented 4 years ago

There's been no activity since January 7. I feel like it's dead.

decentral1se commented 4 years ago

I feel like it's dead.

Commits on Apr 24, 2020

:partying_face:

lukin0110 commented 4 years ago

Any update on this?

vlcinsky commented 4 years ago

My expectations from docker-app were in two areas:

Another feature I like about it, is being based on easy to read docker-compose.yml.

However, after experimenting with the parametrization feature of docker-app I have realized, it is too limited. E.g. for an app, which has in stack dynamic number of services (each e.g. fetching and processing some external url), all services follow the same configuration pattern, but there is no way to define this as configuration (with dynamic number of entries) and to generate resulting docker-compose.yml as I need.

Regarding parametrization I would summarize my requirements as:

In both cases there must be no restrictions.

Fortunately I run into tanka (developed by Grafana) and found the concept perfectly matching my needs apart from expecting Kubernetes thus providing no support for Docker Swarm.

For this reason I started my own tool called sanky.

It is in very experimental mode, does not do anything about packaging images (as docker-app does), but resolves for me my parametrization needs.

decentral1se commented 4 years ago

I'm using https://porter.sh now myself...

kinghuang commented 4 years ago

docker-app 0.6 actually worked really well for my workflows, and had a lot of flexibility. It was basically just the Docker Compose files packaged up.

With 0.8, it felt like Docker was trying too hard to both make it both a Helm clone (e.g., the stack style deploy/rm commands became the Helm style install/uninstall/upgrade), and limit its usefulness to static application packages. In 0.8, service images have to be packed in with the app, and images cannot be parameterized. It's quite useless in a dynamic container world.

I'm disheartened that the project seems to have died. It's actually been 4 years since docker-app's predecessor: Distributed Application Bundles. It's so typical that projects that Docker acquire or create die after a couple years.

decentral1se commented 4 years ago

Yeah they just made a pretty recent new release over at https://github.com/docker/app/releases/tag/v0.9.1-beta3, I guess there are further plans. Would be nice to hear from someone core though :question:

vlcinsky commented 4 years ago

Regarding my "sanky" approach - on the way I found Kapitan which is really impressive in terms of configurability and being tool agnostic. And it seems to fulfill all the requirements I was dreaming of. On the other hand, it does no packaging.

Thanks @decentral1se for https://porter.sh/ - this seems to do packaging too and probably very well.

It is clear, the docker related area is progressing very fast - and it is natural, some attempts do not survive longer. But it is also sign, how essential docker became for our own daily work.

pcgeek86 commented 4 years ago

I would hope this project is not dead ... I find having a catalog of pre-configured, multi-container applications very useful.

cdupont commented 3 years ago

Any update on this? It seems very useful.

vlcinsky commented 3 years ago

@cdupont on our side we did not make any step forward with docker-app. On the other hand in our company we have deployed couple of stacks (we even call it multistacks) to docker swarm and being managed by kapitan and some our tooling. No packaging solution (which would pack complete solution into one archive) in place.

cdupont commented 3 years ago

Thanks for the answer. What I'm looking for is a simple solution to:

Can docker app do that? Any alternative (e.g. Kapitan)? Sorry to hijack the comments here...

gediminasz commented 3 years ago

@cdupont Might not be exactly what you are looking for but I was able to hack together a solution based on docker/compose image.

In short, I wrote a script which saves all required images as tgz and bundles them together with a docker-compose.yml file and a custom launch script into a single docker image based on docker/compose. I launch this bundle image with -v /var/run/docker.sock:/var/run/docker.sock option so that the docker compose executable inside can load the contained images and spin up containers on host.

vlcinsky commented 3 years ago

@cdupont Kapitan is only tool, generating configuration files and whatever can be derived from that. It is definitely not a packaging solution.

Having experience with couple of larger apps (consisting of multiple stacks) I realized that the task is quite complex, e.g. as each deployer might have different log aggregator and monitoring preferences and apps shall fit into these varying situations.

I leave this discussion now as I am getting too far from docker-app (which seems abandoned to me at the moment).

Fuseteam commented 3 years ago

oops the last commit was last year :/ I was hyped up when I learned of docker app too :/

decentral1se commented 3 years ago

It's gone https://github.com/docker/roadmap/issues/209

Fuseteam commented 3 years ago

it appears they are pointing to porter.sh for bundling apps