Hi all,

First a quick bit about me. I'm currently the main developer over at
Cosmology@Home. One thing that has really hurt us is that were physicists,
not programmers, and developing BOINC apps is difficult and time consuming.
This project is born out of that. Some version of this will likely roll out
for us in the next month or so. The reason I'm writing here is that with
some of your help I could imagine it being part of BOINC and being really
powerful.

The idea is simple, run Docker <https://www.docker.com/> apps on BOINC. For
those unfamiliar, Docker is (among other things) a light weight VM. Thus
this is similar in spirit to vboxwrapper, but with several key advantages.
You can read more about this on the github
<https://github.com/marius311/boinc2docker> for this project, which also
contains a fully working example that you can roll out on a test server.
There are still a few important pieces missing, but which all seem doable.

I'm curious to get everyone's thoughts. Ultimately, what would be great is
if some were interested in collaborating and helping me get this in shape
and even in BOINC. For now I'll happily take any questions you might have.
Here's a few questions I anticipate..

Why is this any better than vboxwrapper?
> Creating a VBox app is clunky, and keeping the filesize down is hard. On
the other hand creating a Docker app is streamlined and pleasant. Plus
Docker is really big right now, lots of useful resources are around. More
importantly is Docker's union filesystem, which effectively means that
BOINC hosts never have to redownload parts of the VM which they already
have, allowing flexibility to constantly tweak and redeploy or create
totally new apps on the fly.

But this only works on 64bit hosts?
> Unfortunately Docker is 64bit only, and admittedly this kind of sucks.
But I think the ease and power of boinc2docker will make it more than worth
it. At Cosmology@Home, over half of our active users are 64bit anyway, and
the fraction is growing every day. We will still keep 32bit apps around for
the other users.

You sure this won't require lots of downloading by hosts?
> The app (~25Mb) plus even large "good" base images (~200Mb for Ubuntu) is
still smaller than the prepackaged Vbox VM (~350Mb). You could even do the
2Mb busybox base image for 27Mb overhead total. Even if you choose Ubuntu,
you can tweak your app on top of that all you want, the 200Mb is a one-time
download for the hosts, and the fact that only new data is uploaded to
hosts is totally transparent to you, the developer.

One other small thing worth mentioning is that this can also make it
transparent to take your code between BOINC and cloud servers like AWS or
Azure which run Docker.

Thanks for taking a look and for any feedback.

Marius
_______________________________________________
boinc_dev mailing list
[email protected]
http://lists.ssl.berkeley.edu/mailman/listinfo/boinc_dev
To unsubscribe, visit the above URL and
(near bottom of page) enter your email address.

Reply via email to