Hi guys,

let me "relaunch" this very old thread ;)

Even if most of us already use docker to run Karaf, I think that karaf-docker could be a key and very interesting combination with karaf-boot.

Imagine the following scenario:
- you construct your application thanks to karaf-boot (and the different starters, karaf-boot-maven-plugin, etc) - using your codebase, and the different starters that you use, the karaf-boot-maven-plugin creates a Karaf custom distribution for you - now, you can directly start your Karaf custom distribution on your machines, your cloud, or docker: it's where karaf-docker can help. In addition of the Karaf custom distribution, karaf-docker (and so the karaf-docker-plugin that could be part of karaf-boot) can provide a ready to run docker image with your custom Karaf distribution: you don't have to prepare anything, the dockerfile, or whatever, it will be done for you.

Of course, we keep the current features part of karaf-docker (the fact to manage docker images directly in Karaf). I would like to add a new set of features in karaf-docker: be able to create "business oriented" Karaf (based on the first point). For instance, you want a Karaf WebContainer, Karaf Hibernate, just use docker:create command to create a custom Karaf distribution in a docker image, this distribution will have "pre-installed/bootFeatures" as you described in the shell command.

Basically, karaf-boot and karaf-docker are in the same boat to provide more user experience, flexible systems (profiles oriented) and killer services platform.

I know that it's ambitious, but I trust in you all guys to help and drive Karaf to a new dimension.

Thoughts ?

Regards
JB

On 02/11/2015 08:43 PM, Jean-Baptiste Onofré wrote:
Hi all,

In order to provide an alternative to the instances, I started to work
on a small PoC providing simple and convenient docker.io support in Karaf.

The purpose is to easily manage images, containers, and be able to
provision/create container with Karaf instances.

For instance, this is a current available use case:

1/ You can create a docker.io container in two ways:
1.1/ karaf@root()> docker:bootstrap mydock
creates a fresh docker.io container using karaf:3.0.3 image. I prepared
different ready to use docker.io images for Karaf. I'm working on an
embedded docker hub, with the appropriate commands to administrate it.
1.2/ karaf@root()> docker:provision mydock
creates a docker.io container (using a karaf image) and copy the current
running instance in the dock.
1.3/ It's also possible to start from a dockerfile.
2/ Once the dock (I named it dock meaning docker.io container where a
karaf instance is living) is ready, you can control it using
docker:start, docker:stop, docker:delete commands.
3/ it's possible to connect to a running dock using docker:connect command

I'm working on docker:image*, docker:hub, and improve the existing
docker* features.

However, before moving forward on this, I would like to know if it makes
sense and if people are interested by it.

By the way, the code is on my github:
http://github.com/jbonofre/karaf-docker.

I will push my last changes tomorrow morning.

Any comment is welcome.

Thanks,
Regards
JB

--
Jean-Baptiste Onofré
[email protected]
http://blog.nanthrax.net
Talend - http://www.talend.com

Reply via email to