Giter VIP home page Giter VIP logo

coopto's Introduction

Coopto – a Docker Plug-in for VMware vRealize Orchestrator

Purpose of this project is to create a community process of plug-in development for vRealize Orchestrator (vRO) by fully integrating Docker, a new container technology.

Because the project focus is primary set on integrating functionality into vRO and not on making the Docker API accessible from Java, this project is using docker-java, a free library which aims to do exactly that. Any functionality provided by the Docker API and not available within the docker-java library should not be implemented within Coopto, but contributed to the docker-java project.

#About Coopto Coopto is a plug-in for VMware’s orchestration engine vRealize Orchestrator. It aims to provide full Docker functionality within the central automation component of the VMware stack in order to utilize and combine the power of container technology with virtualization technology.

We think that containers and VM may not only coexist but greatly benefit from each other. Parts where virtualization alone so far has greatly failed due to the high variation of competing formats in a very dynamic market can be moved to the shiny parts or container technology, e.g. the independent and therefore shiftable format. Other aspects of cluster computation where virtualization has matured and proven enterprise ready within the last years can furthermore be implemented on the trusted and well known virtualization stack currently in use in most modern datacenter.

Digging in deeper the combination of both can result in an even more powerful computation stack then possible with just one of the technologies. A typical real world use-case would be providing a persistent storage to a container by leveraging existing vSphere storage APIs to create and attach a virtual HDD exclusively for that container, implicitly simplifying container management and backup for business critical data.

In order to bring both worlds together we use a simple to use and yet very common orchestration engine: vRealize Orchestrator. In fact: if you’re running on a vSphere stack, you probably already own vRealize Orchestrator.

Coopto scope

From our point of view both technologies, virtualization and containerization, currently have their advantages and disadvantages and therefore a right to exist. Time will show how both develop and eventually one will be the winner or both will merge into a new, even more powerful technology. However this will turn out, within the here and now we want to combine the best of the two technologies. That’s where Coopto comes in – and due to its open source nature you can be a part of it, if you wish to.

#Version details We can't say this often enough: be aware that this is still a early version of the plugin and besides that we cannot and will not guarantee stability and function of any component, due to heavy development many things can change in future. This means that if you're using the current version of the plugin in order to build your custom workflows, you may need to change those workflows when upgradeing the Coopto plugin. There are plans to minimize the chances that user-created workflows need to be changed on plugin-changes as long as you're using the available actions and workflows only. So far we can not guarantee that yet, what basicly means that you'll have to check functionality of your Coopto workflows after upgradeing to a newer version of Coopto. It's self-explanatory that you should not do that in production.

#Getting started If you own a copy of vRealize Orchestrator, you got everything you need to get started. Other products such as vRealize Automation may be combined but are not required at all if you just want to get some basic Docker functionality within your vSphere stack. Visit the basic plug-in installation Wiki to get started.

#Support and issues To provide you with the support you need to get things going we’ve put together a cosy wiki page for you. There's also a section about debugging. This is the first place you should visit if you got any issues or questions.

If the issue you’re facing isn’t covered within the wiki you might consider visiting the Coopto thread within the community forums of vRO. Feel like you run into a software bug related to Coopto itself? Be free to submit a new issue on the issues page.

Please understand that the open source nature of this project also means that we – as in we the Coopto open source community – cannot guarantee to provide you with support and even less with support within a certain response time.

If you require enterprise support with costs you might consider contacting [email protected] but please be aware that this is out of scope of the open source process this project is based on and thus should not be submitted into the projects issues section.

#Contributing to Coopto You are very welcomed to work with us on Coopto. You may provide anything that is within the interest of the plug-in, including but not limited to:

  • Documentation enhancements (Markdown - wiki)
  • New plug-in functionalities and improvements (Java - core)
  • New general Docker related vRO actions / workflows (JavaScript - workflows & actions)
  • New special actions / workflows that combine Coopto and build-in vRO plugin technologies and provide solutions for common use-cases (JavaScript - workflows & actions)
  • New sandbox actions / workflows that demo plug-in functions that are not yet demoed by another sandbox action / workflow (JavaScript - workflows & actions) Please note that in order to keep the plug-in clean and its footprint small, we have to be picky about what additions we accept. A rule of thumb for contributions is that there has to be a general interest to the added functionality and that the functionality is not trivial, which means it cannot be implemented with little effort using the already available functions.

If you want to work on the Java core of Coopto, probably you should check out this section of the wiki to get you going. It'll give you initial direction about setting up an build environment.

#Security Disclosure If you have any issue regarding security, please disclose the information responsibly by sending an email to [email protected].

#Licensing & Legal Coopto – from now on “this project”, “this program” or “this software” – is an open source project proudly presented by Fritz & Macziol Software und Computervertrieb GmbH.

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see http://www.gnu.org/licenses/.

This software may include “Open Source Software”, which means various open source software components licensed under the terms of applicable open source license agreements included in the materials relating to such software. Open Source Software is composed of individual software components, each of which has its own copyright and its own applicable license conditions. Information about the used Open Source Software and their licenses can be found in the open_source_licenses.md file. The Product may also include other components, which may contain additional open source software packages. One or more such open_source_licenses.md files may therefore accompany this Product.

Brought to you courtesy of our legal counsel. For more context, please see the notice and license documents. It is your responsibility to ensure that your use and/or transfer does not violate applicable laws.

All product and company names are trademarks ™ or registered ® trademarks of their respective holders. Use of them does not imply any affiliation with or endorsement by them.

coopto's People

Watchers

 avatar  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.