Giter Site home page Giter Site logo

end-of-game / cloudunit Goto Github PK

View Code? Open in Web Editor NEW
156.0 32.0 60.0 194.29 MB

The Turnkey DevOps Platform

Home Page: http://www.cloudunit.io

License: GNU Affero General Public License v3.0

Shell 5.12% Java 49.60% JavaScript 13.09% HTML 19.40% CSS 7.47% FreeMarker 3.87% Ruby 0.03% Python 1.38% Io 0.05% Groovy 0.01%
java jboss tomcat docker jee spring vertx containers php wordpress

cloudunit's Introduction

The Turnkey {Java} Devops Plaform

Homepage

How to manage an application Overview

Thanks to CloudUnit PaaS's powerful provisioning and execution capabilities, classical servers as Tomcat and JBoss, developers can build secure and scalable Java Web applications. So deploy your Java applications in the cloud almost instantly without changing your code.

CloudUnit takes care of the plumbing.

A complete plaform for devops featuring

  • CI/CD with Gitlab or Jenkins2 (dedicated plugin :))
  • EKL Stack for monitoring users containers
  • Prometheus for monitoring platform
  • Sonar to analyse and reports in the future
  • Mattermost chat

Today we have many servers :

  • Tomcat / WildFly / GlassFish
  • FatJar for SpringBoot, Vertx, PlayFramework...
  • Support PHP for Apache Httpd and Nginx

And for modules :

  • SQL databases : Mysql, PostGreSQL, PostGis
  • NoSQL databases : MongoDB
  • Datagrids : Redis
  • Message brokers : ActiveMQ, RabbitMQ

Each module in different major releases.

It is available in one edition for all major platforms which offers numerous extensions to fit the needs of all developers.

It is available under the terms of either the Affero GNU Public Licence 3.0

You can find more informations there : CloudUnit Website

You can test the common platform online here (reseted all night)

To monitor User's applications Elastic

To monitor global platform with alerting Prometheus

Showcases

Previously :

Documentation

Getting started

Installing

Going further

Contributing and customizing

Licensing

All the source code is licensed under GNU AFFERO GENERAL PUBLIC LICENSE. License is available here but CloudUnit is licensed too under a standard commercial license. Please contact our sales team if you would like to discuss the specifics of our Enterprise license. If you are not sure whether the AGPL is right for you, you can always test our software under the AGPL and inspect the source code before you contact us about purchasing a commercial license.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Legal terms

CloudUnit is a registered trademark of Treeptik and cannot be used to endorse or promote products derived from this project without prior written permission from Treeptik. Products or services derived from this software may not be called CloudUnit nor may Treeptik or similar confusing terms appear in their names without prior written permission.

Contact

For any questions, contact us at [email protected]

Or you can ask your questions on CloudUnit Google group

Copyright 2017 Treeptik

Github downloads Github contributors Github stars Github forks

CloudUnit Logo

cloudunit's People

Contributors

cedricdeveze avatar cwahl-treeptik avatar fabienamico avatar guillaumeunice avatar kan23 avatar ledoc avatar mgrillet avatar pgrmcreate avatar punkstarman avatar sebastienmusso avatar t-fabre avatar tevakrief avatar tmamychal avatar xawirses avatar zepouet 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  avatar  avatar  avatar

cloudunit's Issues

Use the tagged CloudUnit images

At each git tag, a Docker tag is created and these tagged images are used in CloudUnit. However, the Java code always uses the latest tag, whereas it should use the version tag.

Mac environment developpment with protected daemon socket

As explained into Docker Documentation

http://docs.docker.com/engine/articles/https/

Warning: These TLS commands will only generate a working set of certificates on Linux. Mac OS X comes with a version of OpenSSL that is incompatible with the certificates that Docker requires.

So we need to have a HTTP mode only for Mac Developper.

Lifecycle Plugins

Provide a generic way to add actions to CloudUnit Lifecycle

  • when an user is created (CreateUserAction interface)
  • when an user logs into CloudUnit (LoginAction interface)
  • when an user is updated (UpdateUserAction interface)
  • when an user is deleted (DeleteUserAction interface)
  • when an application is created (CreateApplicationAction interface)
  • when an application is modified (ModifyApplicationAction interface)
  • when an application is deleted (DeleteApplicationAction interface)
  • when a module is added (AddModuleAction)
  • when a module is removed (DeleteModuleAction)
Class Actions should be implemented custom interface and will be called to provide new behaviour. 

For example if an user logs into CloudUnit, AOP should intercept this step and execute all class implementing LoginAction. Easier to maintain rather than create a lot of AOP Class.

Tag application with CloudUnit origin

The goal is to allow the use of multiple instance of CloudUnit that share the same database and the same docker registry.

Add a the name of the instance of CloudUnit in the configuration.properties file. The instance name will be something like DEV, QA, PROD but we must be able to write anything.

When an application is created the name of the tag must be assigned to the application in the database. The instance of CloudUnit must show only the application with the Tag name of the instance except for the snapshot feature.

The snapshot feature allow to create a new application in an other instance of CloudUnit, at this time the new application will have the new tag name of the CloudUnit instance.

Red message box into login page

When the user arrives the first time into Login Page without setting user/password, no message should be displayed.

At the moment, we have a wrong red box

Pushing sources / deployment with Git

Pushing the sources is functional, the application is built with Maven (Successfully) but the application is not deployed on the server (no deployment in the manager, no history in timeline)

Conditions for the test:

  • Server: Tomcat 8
  • Module installed: MySQL

Can't delete a module

In commit 55049c8

It is no longer possible to remove a module with the web UI. No error message nothing happens.
I have not tested with the CLI.

Log location for Dev and Profile

Maven is not right used to set the place where logs should be.
It is not a problem for dev but yes for production.

Logback.xml must be corrected else no way to use it with Docker automaticated build

Add new icon

Add or verify if already exist new icon for

  • InfluxDB
  • Elasticsearch
  • SolR
  • Redis

APM Plugin

A common way to push information to

  • a custom APM included into CloudUnit built on Telegraf + InfluxDB + Grafana.
  • commercials APM as Level5 or DataDog

Maybe create specific container included as volume and each container should contain specific agent.
So the user could enable/disable them into the UI (or CLI...)

Alias colision

Verify if an alias as "www.foo.com" is equals or not "www.foo.com/"

These two entries should be simular so the second not allowed

docker-compose modified and commited

When we change from GitLab to GitHub, a wrong and dangerous commit appeared : The docker-compose file previously modified by sed was commited. So many ports as Redis, MySQL was exposed into OVH and we lost security.

I think we could avoit it if

  • we use a docker-compose.template to generate the raw docker-compose.xml
  • we have many docker-compose file : one for dev, one for production.

I prefer the first one solution but tell me...

Display origin name of snapshot

Display in the dashboard the information about the origin snapshot when an application is created from a template.

Add a new Field into Application and persist it.

++

Problem during the installation.

Hi,

I've tried to install Cloud unit on a small VirtualBox Debian 8 server, and I'm facing a big problem.

Ansible tells me :

TASK: [docker-host | Copie des clés pour le serveur de dev] ****************** 
fatal: [CUserver] => error while evaluating conditional: cu_environment == "dev"

FATAL: all hosts have already failed -- aborting

Any clue ?

GitLab Integration

This feature is associated with "Plugin feature".

When an user is created/deleted into CloudUnit, the action must be propagated to Gitlab through plugin.
Before any developpment, an analysis must be done about GitLab API and hooks about this platform.

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.