?Excellent point.
Are you willing to contribute that patch yourself? I would happily serve as a reviewer if you submit a patch and add me as a reviewer (http://aurora.apache.org/documentation/latest/contributing/). Thanks, Stephan ________________________________ From: Adrian Fraisse <[email protected]> Sent: Tuesday, May 17, 2016 17:44 To: [email protected] Subject: Re: Mesos executor dependencies using docker images Hi Stephan, Thank you for your reply. Knowing this, I will simply write a script to automatize the update & commit of our images and it should suffice for now. May I suggest a patch to http://aurora.apache.org/documentation/latest/features/containers/ mentioning Mesos dependencies though ? Best regards, Adrian Le 17 mai 2016 à 17:35, Erb, Stephan <[email protected]<mailto:[email protected]>> a écrit : Hi Adrian, your analysis and solution is correct. As of today, the Aurora executor runs within the container. It is using a native mesos library in order to communicate with the agent, and therefore requires you to ship Python2.7 + all Mesos dependencies in each container. Without doubt, this is not an optimal solution. We are therefore investigating alternatives: https://issues.apache.org/jira/browse/AURORA-1690? Best Regards, Stephan ________________________________ From: Adrian Fraisse <[email protected]<mailto:[email protected]>> Sent: Tuesday, May 17, 2016 17:08 To: [email protected]<mailto:[email protected]> Subject: Mesos executor dependencies using docker images Hello fellow Aurora enthusiasts, I am struggling with the docker containerizer. Jobs launched using docker containers end up failing, because Thermos cannot find Mesos's required dependencies, such as libcurl, libsasl, libsvn... See trace below, with libsasl2 : Traceback (most recent call last): File "apache/aurora/executor/bin/thermos_executor_main.py", line 45, in <module> from mesos.native import MesosExecutorDriver File "/root/.pex/install/mesos.native-0.27.2-py2.7-linux-x86_64.egg.6c53d177e078864264dbb5af282e84d7c2cdc3a8/mesos.native-0.27.2-py2.7-linux-x86_64.egg/mesos/native/__init__.py", line 17, in <module> from ._mesos import MesosExecutorDriverImpl ImportError: libsasl2.so.2: cannot open shared object file: No such file or directory Having stumbled upon the issue quite a lot, I found a way to fix it : having the required dependencies installed on the containers I need to run. It's annoying and feels kinda dirty though. I dug into Mesos documentation and found this athttp://mesos.apache.org/documentation/latest/container-image/ : For a general purpose executor (e.g., thermos) of a framework (e.g., Aurora), requiring it and all its dependencies to be present in all possible container images that a user might use is not trivial. Therefore, my question is : do I need to add Mesos's dependencies to each and every docker image I want to run (and is this best practice) or am I doing something terribly wrong ? Thanks for your support ! Adrian
