Docker Tutorial Series : Part 6 : Docker Private Registry


Originally posted on iRomin:

This is part 6 of the Docker Tutorial Series.

In this part we shall take a look at how you can host a local Docker registry. In an earlier part, we had looked at the Docker Hub, which is a public registry that is hosted by Docker. While the Docker Hub plays an important role in giving public visibility to your Docker images and for you to utilize quality Docker images put up by others, there is a clear need to setup your own private registry too for your team/organization.

View original 903 more words

Featured Image -- 1067

CI/CD the Docker Way


Originally posted on Tutum Blog:

CI-CD@2x

Tutum has recently announced build & testing capabilities and we are very happy not only about what we think is a huge step forward in providing the best CI/CD tools for developers, but also because of the amazing planning and team collaboration that was required from us to deliver such a big feature.

Tutum CI/CD design goals were to provide a flexible, agnostic, automatable and locally replicable solution for build & tests, which mirror the goals for the Docker project. This is why we based our solution for CI/CD on the open source image tutum/builder.

In a nutshell, tutum/builder performs the following steps:

  • Configure docker credentials using $DOCKERCFG.
  • Clone the repository using $GIT_REPO and checkouts the commit in $GIT_TAG.
  • Build the docker image specified by $DOCKERFILE_PATH.
  • Push the image to the image tag specified in $IMAGE_NAME.

How do we get the right values for…

View original 652 more words

Why we are moving away from Google App Engine


Originally posted on Transformative Research:

Google 貼牌冰箱(Google Refrigerator) Google 貼牌冰箱(Google Refrigerator) (Photo credit: Aray Chen)

ConceptCodify is moving away from our current server provider, Google App Engine. We wanted to write to our users and the develop community to share our experience

The Good

Google App Engine is the ideal choice for getting your idea out the door quickly and seeing if there is a viable market for what you want to accomplish, and the positive aspects listed below strongly show this point.

Zero to App in a few minutes. Easy deploy, local development, email, logs, cron jobs… Google App Engine comes with a great deal out of the box. In fact, no other provider out there gets you set up and developing in as little time. There’s so little that you actually have to set up to get going. This is by far the most compelling reason to use Google App Engine, especially if you are…

View original 1,517 more words

The First-Ever Go Conference in India – GopherConIndia 2015


Originally posted on Josh Software - Where Programming is an Art!:

After the resounding success of GopherCon 2014 in Denver, Co, USA the Go Language Community in India together with the Innovation And Technology Trust (ITT) (a non-profit organization, established to organize and conduct technology conferences in India whose current portfolio includes RubyConf India, GopherCon India and DevOpsDays India) are bringing you the first-ever Go conference in India – GopherConIndia 2015 in Bengaluru (Bangalore) from 19-22 Feb. 2015.

The Indian Go programming community is growing at a dramatic pace. The number of companies utilizing Go, as part of their technology stack, continues to grow steadily.

GopherConIndia 2015 GopherConIndia 2015

Planning and organizing an all India conference is not an easy task but a small team of dedicated volunteers (Ajey Gore, Gautam Rege, Karan Misra, Krishnaprasad Varma, Pravin Mishra, Santosh B Malleshappa, Sathish VJ, Satish Talim – this does not list all of the volunteers, without…

View original 428 more words

Install Go(Golang) on Ubuntu


There are many ways to configure the Go development environment on your computer, you can choose any one you like. The three most common ways are as follows.

gopherbw

Official installation packages
The Go team provides convenient installation packages in Windows, Linux, Mac
and other operating systems. The easiest way to get started.

Install from source code
Popular with developers who are familiar with Unix-like systems.

Use third-party tools
There are many third-party tools and package managers for installing Go, like apt-
get in Ubuntu and homebrew for Mac.

In case you want to install more than one version of Go in one computer, you should take a look at the tool called GVM. It is the best tool I’ve seen so far for achieving this job,  otherwise you have to know how to deal with this problem by yourself.

gopher

Using GVM

1. Make sure to install pre-requisite libraries first

sudo apt-get update
sudo apt-get install curl git mercurial make binutils bison gcc

2. Install GVM

bash < <(curl -s https://raw.github.com/moovweb/gvm/master/binscripts/gvm-installer)

3. Install Go

gvm install go1.2
gvm use go1.1.2 [--default]
gvm list

Install Go Binary

1.  Install required libraries

sudo apt-get install python-software-properties  # 12.04
sudo add-apt-repository ppa:duh/golang
sudo apt-get update

2. Install Go

sudo apt-get install golang

3. export the settings you’re gonna need to bash_rc or equivalent:

export GOROOT=/usr/lib/go
export GOBIN=/usr/bin/g

From Source

1. Dependencies

sudo apt-get update
sudo apt-get install gcc make mercurial git libc6-de

2. Building from source

hg clone -u release https://code.google.com/p/go
$ cd go/src
$ ./all.bas

3. The GOPATH environment variable

Go commands all rely on one important environment variable which is called $GOPATH. Notice that this is not the $GOROOT where Go is installed. This variable points to the workspace of Go in your computer. (I use this path in my computer, if you don’t have the same directory structure, please replace by yourself.)

export GOPATH=$HOME/gocode
export PATH=$PATH:$GOPATH/bin

Note:- If your Go version is greater than 1.0, you don’t have to set $GOBIN, and it will automatically be related to your $GOROOT/bin, which we will talk about in the next section

golang.sh-600x600

You can install any of the above three way. I mostly prefer using GVM. I hope it will help you.!

Celebrating the One Year Anniversary at ShepHertz Technologies


I am very pleased to announce that this is the one year anniversary at ShepHertz – it was on March 1st, 2013. I never dreamed that I will work with such a like minded people, technologies and company.

It has been a such an incredible journey so far. I learned so many things that i can’t put in words over here. I found truly wonderful experience with truly wonderful people at ShepHertz.

I am more happy to say that I am part of company which is A Cloud Ecosystem Provider for Apps and unique in this cloud computing world!.

Here I get opportunity to work on Cloud Computing production like PaaS, BaaS and GPaaS.

ext

Below, I would like to share some highlights from my year experience.

App42 PaaS – At App42 PaaS I am member of the Runtime Systems team, where taking care of distributed systems that manage many application hosting(Rails/PHP/Java/ Node.js), systems development and infrastructure automation.

At this point you must wondering What is App42 PaaS and what it do? Right? Let me explain.

App42 PaaS is a Public Cloud Platform-as-a-Service with support for multiple languages
and platforms. This will enable you to focus on your development rather than putting your time on infrastructure hassles.

Key Benefits:
– A Polyglot platform that supports multiple languages and frameworks like Ruby, Java, PHP, Node.js, JRuby, Jython and more.
– Multiple Cloud Services like MongoDB, CouchDB, PostgreSQL, MySQL and more.
– Control through Command Line as well as Management Console for quick deployment of Apps
– Customizable load balancing for high availability- Quick Scaling/Descaling of resources

My Journey with App42 API – The App42 Cloud API’s consists of a REST based service which has a JSON and XML interface. There are around 22+ modules with over 400+ API’s e.g. User, Session Management, Storage, Recommendation, Photo Gallery, Queue / Message, Game, Geo Spatial etc. which will help developers to develop their applications; irrespective of the type of App they are developing. SDK’s are provided for all popular languages and platforms which will enable easy integration of the API’s into the App code. With just a few lines of code, the App developer gets access to services from a simple to complex technical as well as business services.

I would like to thank Siddhartha Chandurkar and Naveen Goswami sincerely for your all support, kindness and help during years with organization. Thank you ShepHertz family to making this journey so wonderful.!!

Why should i use Ruby on Rails?


Previous yesterday(22 Feb, 2014) we had Delhi NCR Ruby Meetup on Open Source Saturday – How can I contribute to Ruby on Rails?. There i had opportunities to meet few college student, Once of them asked to me – Why should i use Ruby on Rails? Yeah, That’s really good question :) So let’s talk, why should we use Ruby on Rails when dozen of language and frameworks are available.

1. Ruby on Rails provides a consistent approach to build your web applications. If you have already experienced with other web development language or framework, you can understand, how tough it was process, you typically need to survey and ask with expert to choose your various software components to solve the common architectural problems of persistence,  build scripts, testing, logging, database setup, application configuration, web tier components and rest of software life cycle. Using the Ruby on Rails framework these decisions are already made for you, now you can spend more time to understanding software business problem and quickly build a working prototype. By using Rails you become productive in minutes not weeks or months.

2. Ruby on Rails follow CONVENTION OVER CONFIGURATION pragmatic philosophy, this apply in all layers of your software development architecture with the highest productivity gains noticeable in the relationship between the model and the database(ORB- Object Relationship Model). Once the developer understands the rules and constraints, Rails MVC magically connects your view to your controller and model, and your model to the database. That’s awesome .!! You do not have to write any script or tool to manage all this ==> MVC – Model View and Controller.

 

rubyonrails

3. When we talk about OOP’s, Ruby is a fully featured object-oriented language and in addition Ruby come with mix-ins modules which contain independent code to inject into your classes and block. Ruby is an extremely dynamic/run time language, which means that code can be generated and executed on the fly. It’s dynamic nature includes the definition of new classes & methods, as well as the overloading of operators etc. Apart from this you can re-open, redefine and removed existing classes on fly.

4. Unlike other web language and framework, rails has build in templating support, json/xml document and email service.

5. Rails comes with ActiveRecord, Association and ActiveModel(object relationship mapping), which provides seamlessly persisted interface to database like transactions, inheritance, validation, scope and caching.

6. Rails includes support for a variety of web technologies like JavaScript libraries, JQuery, REST, Embedded ruby, HAML, CoffeeScript etc. with configuration in development, test and production environments. If you are planing your application into Web 2.0 space, Rails provides a rich abstracted interface to implementing AJAX operations.

7. Most important rails gives us flexibilities to perform database migration and rollbacks between environments and across development until project at mature stage. However with the Rails framework you will be delighted with the implementation of database migrations for applying and rolling back database changes. You only need to enter your update and rollback scripts in Ruby, framework understands the current version & can move forwards or backwards to any database version.

8. Getting started with Rails is easy as generators/migration will propel you along. DRY(Don’t Repeat Yourself) principle of Rails encourage experience developer to write less code by using the metaprogramming features of Ruby. Overall less code to write means higher productivity, less bugs and minimum complexity.

I hope you convinced, Still doubt? Please go through below links:

http://www.skilledup.com/learn/programming/4-reasons-learn-ruby-first-programming-language/
http://www.techrepublic.com/blog/10-things/10-reasons-why-you-should-learn-ruby-on-rails/3060/
http://blog.teamtreehouse.com/reasons-why-every-web-designer-needs-to-learn-rails

http://articles.businessinsider.com/2011-05-11/tech/30035869_1_ruby-rails-custom-software

Have question? feel free to comment. :)