Giter Club home page Giter Club logo

ship's Introduction

ship

Purpose

  • Have various services in same host
  • Shared resources
  • Isolated services
  • Isolated IP Address

Introduction

This simple script is very helpful if you want, quickly, test some software in a chroot with totally isolation (mounts, network, user,etc), using some new technologies like namespaces. This is nothing more than one, normal, chroot but isolated.

I called "ship" to each of isolated chroot. And, is possible you have one or more ship/s running.

With this you don't need to install virtualbox, vmware, etc... ok, but you need install some packages :)

By default, Debian distributions don't have the option -p (unshare pid) and -f (fork before launching) at unshare, so, we need compile the util-linux package.

You change the ip's at /etc/network/interfaces and /etc/hosts in the beginning, before your start. By default i use 192.168.79.139. The next version must have this feature solved.

Now, the openvswitch support was release. Some configurations are needed on host (see below) and use the chrootmns script.

In the next version i will test/develop, first, in Ubuntu and after CentOs

Features

  • Run like a normal SO
  • All services was isolated
  • /proc and /sys are host independent
  • Is possible have one or more network interfaces
  • CLI to start/stop/connect in to chip
  • run different versions of debian OS
  • Portable

Note

Developed and tested in debian and derivatives, only!

Requirements

  • Kernel >= 3.14

Add this repository to install kernel > 3.14:

> echo 'deb http://ftp.debian.org/debian/ wheezy-backports main non-free contrib' >> /etc/apt/sources.list

> apt-get update

> apt-get -t wheezy-backports install linux-image-amd64 linux-headers-amd64 
  • Debian/Ubuntu packages:

apt-get install build-essential python-dev python-pkg-resources python-setuptools python-ipaddr curl unzip vim openvswitch-switch

easy_install pip

pip install ipcalc netaddr sh config

Installation

From Script:

sh install_me or sh install_me_ovs

Usage

Usage: shipmn [options]

Options:
  create			create new ship using debootstrap
  status			ship's status
  start all			start all ship's
  start ship_name		start ship
  stop all			stop all ship's
  stop ship_name		stop  ship
  con ship_name			enter in ship

Examples:

-> shipmn create webserver
-> shipmn status
Status all
webserver Not Running
-> shipmn start webserver
-> shipmn con webserver

You can find some use case in HowTo folder!!

ship's People

Contributors

bsurfer avatar

Stargazers

 avatar Nuno Gomes avatar Rubens Franco avatar Nuno  avatar Tiago Pedrosa avatar Yves Martin avatar  avatar

Watchers

 avatar Mariusz Sielicki avatar Ruslan Rotaru avatar Unikoke avatar Tiago Pedrosa avatar Nuno Gomes avatar

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.