iExec Dev Letter #13: Docker and Blender Support — 7 Feb 2018

Wassim Bendella
iExec
Published in
4 min readFeb 9, 2018

--

Another month has come and gone and we’ve got quite a few exciting news! In this project update, we’ll cover a major milestone recently reached by the iExec team: Docker support. We’ll also present a first use case of 3D rendering by iExec. Thanks to Docker, Blender can now be run on our decentralized infrastructure, and the Blender dapp was just added to the iExec DApp Store for you to try out. Finally, we’ll go over recent updates in terms of partnerships, listings, and community management.

The Team Grows Bigger Once Again

Eric Rodriguez is joining the team as a High Performance Computing (HPC) and GPU Computing expert. With 10+ years of experience in scientific software development, Eric will bring over his strong expertise in applied mathematics, programming, project management, as well as industrial and academic collaborations. He spent 2 years at the French research institute INRIA, where he conducted research on Grid Computing topics, and 6 years at Siemens working with numerical solvers on supercomputers. At iExec, he will support the adoption of our decentralized cloud computing platform for IA, ML and 3D rendering applications.

iExec Now Supports Docker Applications

If you’re a programmer or a techie, chances are you’ve at least heard of Docker, as it has become one of the most talked-about infrastructure technologies of the past few years. Containers and VMs are quite similar in their goals: to isolate an application and its dependencies into a self-contained unit that can run anywhere.

Docker technology aims to create and run virtual environments (VE) permitting to isolate application executions without the need to launch a separate operating system (OS). This last specificity is the major difference from VMs that greatly reduces overhead and footprint compared to other technologies.

Disclaimer: in order to comply with our Proof-of-Contribution (PoCo) algorithm that will come with our V2, deterministic applications are the only potential valid dapp candidates.

Docker containers as iExec applications

As described in a previous article, we introduced the usage of a Docker container as a dapp within the iExec platform. We especially focused on proposing the same application workflow as experienced by those who already started using our SDK.

Here is an example of an iExec dapp using a Docker application:

app: { type: ‘DOCKER’, envvars: ‘XWDOCKERIMAGE=ikester/blender’, }

You may check our Blender sample dapp to start building your own Docker dapps.

Let’s summarize

  • Starting today, iExec supports Docker applications, hurray!
  • Developers can “dockerize” their dapps, and push them on the public Docker Hub (we’ll support private Docker images in the future).
  • We encourage developers to use Docker over binary for their new dapps.
  • Docker brings OS-agnostic support on the iExec worker side (a worker being a provider of computing power), as well as an extra layer of security.
  • Docker lets developers pre-package all their application dependencies in an image, therefore opening the iExec platform to a whole new range of possibilities.
  • If the app can not be “dockerized”, we still offer the “good ol’ method”, i.e. deploying application binaries. We preserve the possibility to end this feature, if this happens to become obsolete for some reason.

Drawbacks: Docker runs in privileged mode. We are studying different solutions, such as Singularity. Also more on this soon.

iExec Now Supports Blender for 3D Rendering

Thanks to the Docker technology, we are proud to announce that we have added Blender as a new dapp to our DApp Store, as a first use case of 3D rendering for iExec.

Blender is the free and open source 3D creation suite. It supports the entirety of the 3D pipeline — modeling, rigging, animation, simulation, rendering, compositing and motion tracking, even video editing and game creation.

As an illustration, the video below guides you step by step in obtaining a rendered frame from a Blender 3D model.

Bonus: Here is an interactive tutorial to learn how to run any dapp from the iExec DApp Store by using the iExec SDK.

Other Interesting News and Achievements

January has been a month of many surprises. Here’s a short summary of our recent achievements:

  • iExec partnered with Stimergy and Cloud&Heat to provide greener computing solutions.
  • iExec joined the OpenFog Consortium, which was founded by ARM, Cisco, Dell, Intel and Microsoft. The consortium’s aim is to accelerate the deployment of fog computing technologies that will support intelligence at the edge of IoT.
  • RLC tokens can be traded on Binance, Bitfinex, Bancor, Godex and BestRate.
  • RLC tokens can now also be stored on the Exodus wallet.
  • We’ve started a series of short regular updates on the progress made by the iExec team. Here’s the last one, you may subscribe to r/iexec to not miss the upcoming ones.

That’s it for this Dev Letter. Our developer updates will be published every two weeks. Stay tuned for the next one!

--

--

Wassim Bendella
iExec
Writer for

Wassim Bendella is a business developer at iExec, a blockchain startup decentralizing the cloud market (previously at Shell and Cointelegraph).