taverna-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nadeesh Dilanga <nadeesh...@gmail.com>
Subject Re: Finalize Docker Invoke JSON format
Date Fri, 24 Jun 2016 05:58:58 GMT
Hi all,

Yes, SSL issue also went away. When I point cert path in docker-java it
picks it up without any concern.

I sent a pull request with latest code changes. And now the
RemoteClient(Utility client for docker commands) supports
- Inspect an Image
- Search Images
- List all Containers
- Create Container
- Start Container
- Stop Container

Pulling an Image is also supported, not implemented yet. Will do that also.
And obviously we can keep adding more capability. And in the activity
plugin execute, I am expecting an input "action" and based on it's value I
am executing the docker commands and putting a JSON String as output. For
errors, It is a error message.

Please let me know your feedback on how I can further improve the code
base/structure. I will be keep adding remaining docker command support for
RemoteClient as well as Activity.

On Thu, Jun 23, 2016 at 6:22 AM, Stian Soiland-Reyes <stain@apache.org>

> On 23 June 2016 at 07:17, Nadeesh Dilanga <nadeesh092@gmail.com> wrote:
> > With the help of maven dependency tree, was able to rule out all possible
> > places that packs in old jacksons. And since you mentioned about 2.7.4, I
> > only added following and was able to get rid of above error. So that
> means
> > docker-java can work with 2.7.4. I am in the process of doing code
> changes
> > accordingly to implement docker-java utility instead of docker-http.
> Great investigation!
> Dependency version management can be a bit tricky, but luckily most
> Java libraries are (somewhat) following Semantic Versioning
> http://semver.org/ which makes it a lot easier.
> There would be ways around it if we really needed to - but that would
> be more of a hack (e.g. shading/bundling Jackson 3.0.0 class files
> inside our own JAR but with new package names)
> > Now I am creating a full pledged DockerContainerConfiguration  bean with
> > all supporting params. Will send a pull request as soon as I completes
> it.
> Great news! So if you find the docker-java working well then we don't
> need to focus so much on the Docker API (which I guess could change
> over time as Docker folks move rapidly)
> What about the SSL certificate issue, that is gone now?
> > One question, docker container config, that we expect to read as a JSON,
> > but we need certain params to setup docker client to invoke docker remote
> > api. Ex: remote host;port, cert path, if we have a special registry, its
> > url, username/password etc. Shall I accept these as Activity Config
> > params(the map I get in executeAsync()) ? Or any suggestions for that ?
> Perhaps the best would be if we have a way to override.. something like:
> 1) Is it provided as a System.getProperty() ?  (e.g. -D
> taverna.docker.host=asdkfalsfkd )  -- this could then be used with
> executeworkflow.sh
> if not:
> 2) Does the activity hard-code it in its config JSON? (e.g. {
> "docker": { "host": "asdfgb" } } ))
> if not:
> 3) Is there a workbench-wide Configuration (e.g. loaded from
> ~/.taverna/conf/docker.conf)   (You've already added support for this)
> or perhaps finally:
> 4) A reasonable default for this operating system?
> or at least:
> 5) Fall over very hard
> Perhaps if you put some kind of "configuration joiner" method
> somewhere, then that could also be inspected in the workbench to see
> what the "final" configuration is for an inserted Docker activity.
> also see what the docker-java already provides for such configuration
> settings/files (if any)  -- perhaps we could use that directly
> instead.
> --
> Stian Soiland-Reyes
> Apache Taverna (incubating), Apache Commons
> http://orcid.org/0000-0001-9842-9718

  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message