Giter Club home page Giter Club logo

swarm-frontends's Introduction

Swarm frontends

This project contains Docker Compose files used to easily deploy distributed containerized applications. Currently the project contains Docker Compose files for Kubernetes and Mesos-Marathon.

The rationale behind this is that Swarm is lightweight enough to deploy additional orchestration tools on top. You begin with the regular docker experience and you can enhance this by adding orchestration/schedulers on top (kubernetes/nomad/mesos), etc. It is not yet production ready.

An added benefit is that you can use the regular docker commands against the Mesos/Marathon and Kubernetes clusters: inspect/logs/attach, etc.

Prerequisites

  • Master version of Docker Compose: (see Issue #2334)
  • Latest version of Swarm: 1.0.0
  • Point Compose to the Swarm cluster if not local by setting DOCKER_HOST, DOCKER_TLS_VERIFY, DOCKER_CERT_PATH appropriately
  • An etcd, consul or zookeeper cluster running for the overlay networking feature (this is not mandatory, the compose file can be tweaked to not use it but it's a nice addition to deploy across cloud providers).

See the networking documentation to setup docker to use the Multi-Host networking features.

To simplify your setup, we have some helper files for setting up virtualbox VMs with Swarm on your machine:

  • Prerequisite: you have installed Docker Toolbox
  • init_swarm.sh sets up a 6 node Swarm cluster (1 master, 5 agents) using docker-machine and VirtualBox.
  • Setup your environment variables: eval $(docker-machine env --swarm swarm-master)
  • Follow instructions in the appropriate directory (kubernetes or mesos-marathon) to run Docker Compose to setup and scale your containerized application
  • Use cleanup_swarm.sh to clean up the VMs created

Copyright and license

Copyright © 2015 Docker, Inc. swarm-frontends is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

swarm-frontends's People

Contributors

aanm avatar abronan avatar amitshukla avatar dgageot avatar losdevnull avatar samalba avatar thajeztah avatar ytsarev avatar zoidyzoidzoid avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

swarm-frontends's Issues

--x-networking error on Ubuntu 14.04.2 LTS

I am trying to start cluster on Ubuntu 14.04.2 LTS and get this error:

$ docker-compose --x-networking -f mesos-marathon-swarm.yml up -d

Creating zookeeper
ERROR: Cannot start container 2e0db99266e13f5f04f6a1bad101b370cf4115f98b5ee73865ba0bb72140e556: subnet sandbox join failed for "10.0.1.0/24": vxlan interface creation failed for subnet "10.0.1.0/24": failed in prefunc: failed to set namespace on link "vxlana8e0a02": invalid argument

docker info:

Containers: 5
Images: 15
Role: primary
Strategy: spread
Filters: health, port, dependency, affinity, constraint
Nodes: 3
 swarm-master: 95.213.200.201:2376
  └ Status: Healthy
  └ Containers: 3
  └ Reserved CPUs: 0 / 1
  └ Reserved Memory: 0 B / 514.6 MiB
  └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-24-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=vscale, storagedriver=aufs
 swarm-node-01: 95.213.200.214:2376
  └ Status: Healthy
  └ Containers: 1
  └ Reserved CPUs: 0 / 1
  └ Reserved Memory: 0 B / 514.6 MiB
  └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-24-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=vscale, storagedriver=aufs
 swarm-node-02: 95.213.200.136:2376
  └ Status: Healthy
  └ Containers: 1
  └ Reserved CPUs: 0 / 1
  └ Reserved Memory: 0 B / 514.6 MiB
  └ Labels: executiondriver=native-0.2, kernelversion=3.13.0-24-generic, operatingsystem=Ubuntu 14.04.2 LTS, provider=vscale, storagedriver=aufs
CPUs: 3
Total Memory: 1.508 GiB
Name: swarm-master
root@swarm-master:~# uname -a
Linux swarm-master 3.13.0-24-generic #47-Ubuntu SMP Fri May 2 23:30:00 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Please help me to resolve this error.

Exposing a service?

Hi there -

I setup a Swarm cluster on Azure using this: https://github.com/Azure/azure-quickstart-templates/tree/master/docker-swarm-cluster

and then followed the tutorial/used the compose file in this repo to get a Kubernetes cluster running. I also followed the instructions to setup multi-host networking on my Swarm cluster, and from what I can tell, that is all working.

I'm able to deploy the Wordpress example (and everything says, Ready, status OK, etc etc).

But I have absolutely no idea how to access the thing. Because there's (at least) four layers of networking here: Physcial IP address of the machine (my nodes are on a 192.168.0.0/24 range) which is what my load balancer needs to point to, at the end of the day; the Swarm overlay network (titled "kubernetes", and with an IP range of 10.10.1.0/24); the Swarm bridge network ("docker_gwbridge", in the 172.18.0.0/16 range); and then what --service-cluster-ip-range is set to in the docker-compose file (172.17.17.1/24).

When I expose the port (using Kubernetes NodePort service type)...I can't access anything unless I access the pod directly.

Do you all have any thoughts on how to make this work? Or any possible guidance here? It would be much appreciated.

Thanks for putting this project together!

-Adam

Add a local docker registry

a common use case would be adding a local docker registry..

i tried but was failing..

can you please add it to the shell scripts and compose file.

thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.