-
Feature Request
-
Resolution: Unresolved
-
Critical
-
None
-
None
I've been wondering for a time what would be the best way to integrate docker with our server adapters.
I initially first thought it should be an additional profile to the existing local or remote profiles - but I think that option actually ends up being too limiting. To start - the server inside the docker then is assumed to always be a wildfly server; and I think for docker that is too limiting.
Watching Eclipse Che demo at EclipseCon I realized their approach for "Runners" actually fits perfectly.
What they do is that they don't actually have any insight into what servers they are running - they simply just have an associated DockerFile for a "runner" which they build and then run before launching.
Once launched they then know where the server port is, where the possible debug port is, where files are mounted etc.
So this Docker Server Adapter can be made to run any kind of application.
WildFly, Tomcat, Python, even plain java apps.
And actually it is not just a DockerFile that is associated with the run but a templated dockerfile. A file where certain variables will be replaced; like:
VOLUME /deployments ADD $app$ /deployments
will add the packaged app (i.e. wonka.war) into the /deployments folder and /deployments is mounted.
And actually the /deployments can then be updated incrementally if wanted to.
Even greater is that if we could support the same syntax and semantics of the templating we can simply reuse the templates defined by Che at https://github.com/codenvy/dockerfiles/
You can see more complete info on what codenvy/che does http://docs.codenvy.com/user/builders-and-runners/#custom-machines
This would cover all the usecases I can currently think of with launching docker from eclipse - but not be tied to any specific server type.
- blocks
-
JBDS-3551 JavaEE Developer - be able to start/stop applications on docker with debug on/off
- Open