Skip to content

Instantly share code, notes, and snippets.

@solidsnack
Last active December 6, 2017 05:21
Show Gist options
  • Star 12 You must be signed in to star a gist
  • Fork 4 You must be signed in to fork a gist
  • Save solidsnack/10944095 to your computer and use it in GitHub Desktop.
Save solidsnack/10944095 to your computer and use it in GitHub Desktop.
To get started with Docker/Marathon/Mesos, you need to install a
new Mesos, a new Marathon, and Deimos, the bridge to Docker.
You'll also need Docker and the JVM. These instructions are for
Ubuntu 13.10.
## Install Mesos prerequisites
:; sudo apt-get update
:; sudo apt-get install zookeeperd default-jre python-setuptools python-protobuf curl pip
## Install recent Mesos
:; curl -fL http://downloads.mesosphere.io/master/ubuntu/14.04/mesos_0.19.0~ubuntu14.04%2B1_amd64.deb -o /tmp/mesos.deb
:; sudo dpkg -i /tmp/mesos.deb
## Install the updated Mesos Python egg, for use in authoring frameworks
:; curl -fL http://downloads.mesosphere.io/master/ubuntu/14.04/mesos-0.19.0_rc2-py2.7-linux-x86_64.egg -o /tmp/mesos.egg
:; sudo easy_install /tmp/mesos.egg
## Install Deimos
:; sudo pip install deimos
## Install the Marathon Deb package, built from this branch:
## https://github.com/mesosphere/marathon/tree/wip-container-info
:; curl -fL http://downloads.mesosphere.io/marathon/marathon_0.5.0-xcon2_noarch.deb -o /tmp/marathon.deb
:; sudo dpkg -i /tmp/marathon.deb
To configure Mesos to use Deimos, you need to set the contents
of two files:
:; sudo mkdir -p /etc/mesos-slave
:; echo /usr/local/bin/deimos | sudo dd of=/etc/mesos-slave/containerizer_path
:; echo external | sudo dd of=/etc/mesos-slave/isolation
Installing Docker is documented on the Docker site. Here's one way:
## Install Docker
:; sudo apt-get install linux-image-extra-"$(uname -r)"
:; sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
:; echo 'deb http://get.docker.io/ubuntu docker main' | sudo dd of=/etc/apt/sources.list.d/docker.list
:; sudo apt-get update
:; sudo apt-get install lxc-docker
It might be helpful to pre-cache the `libmesos` Docker image,
used for custom executors:
:; sudo docker pull libmesos/ubuntu:13.10
At this point, you should take measures to ensure all services
have started (or restarted). A reboot would be easiest.
To test that it seems to be working, try the Deimos integration
tests:
## If "$eth0_ip" does not work, try "$(hostname)"
:; git clone https://github.com/mesosphere/deimos.git
:; ./deimos/integration-test/test-suite "$eth0_ip":5050
@solarkennedy
Copy link

Wow, a year later and google pointed me here here for some other error message.

If there are any other archaeologists finding this thread, if possible you should upgrade >= mesos 0.20 which has native docker containerization and no longer requires deimos as an executor.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment