3 min read

Three Reasons Why Developers Love Docker

By Praecipio Consulting on May 6, 2016 11:00:00 AM

A smooth running production environment is a beautiful thing. But how do we get there? And how do we ensure that all of our production, staging/test, and development environments stay in sync in order to get there? Today, it seems like everyone in software development is talking about Docker and containers. In fact, according to the 2016 State of the Cloud Survey by RightScale, Docker adoption doubled from 13% to 27% in just one year. Furthermore, 35% of the organizations surveyed reported that they have plans to adopt it soon. 

Why has Docker adoption skyrocketed and how can those using Bamboo for continuous deployment reap the benefits? Check out three reasons why developers love Docker, and how it can provide value for your dev team. 

But first... 

What are Containers?

A Docker container packages software in a complete filesystem with everything it needs to run – such as code, runtime, system tools, system libraries – guaranteeing that it'll always run the same on any environment. Docker is all about creating consistency and encouraging collaboration. It revolutionizes how we share our environments the same way Git has changed code collaboration. At its core, Docker is about utilizing the least amount of operating system resources and dependencies needed to run an application. This focus on maximizing efficiency leads to a painless, more collaborative, and seamlessly integrated environment to test and deploy applications. 

Sourcewww.docker.com

1. Test without surprises

A crucial part of the development process is testing, whether on a local machine or in a virtual dev environment. With containers, every environment is exactly the same so changes and unexpected dependencies won't interfere with testing – saving developers time and energy from tweaking problematic environments and instances. 

Running containers on your local machine using Docker Quickstart Terminal lets you test in a consistent environment.  

2. Collaborate with consistency

Unexpected dependencies are already a hassle for one developer and becomes an even bigger headache when other devs enter the picture. Unknowns in an environment are amplified with each new team member – who knows what's on their machine or which version of Java they're running? With Docker, consistency facilitates collaboration. By starting with a known configuration in a common container, devs are always on the same page about which version to use; it's right there in the container.

Share your Docker Images with a registry like Docker Hub.

Source: https://hub.docker.com/_/hello-world/

3. Integrate with Atlassian 

Atlassian, the leader in enterprise software for collaboration and issue tracking, is the perfect complement to Docker. By pairing Docker's consistency with Atlassian's integration and automation, collaboration between development and IT ops becomes seamless. Using the new Docker Hub 2.0 with Atlassian's Bamboo, source code can be automatically built and deployed to an identical development, test, or even production environment. No more requesting environments from the IT ops teams; triggers will automatically fire from your approved pull request in Bitbucket to spin up a lightweight container in your QA environment almost instantly. Without the excess back and forth, you can go from source code to a running application in minutes. 

The Docker Task in Atlassian's Bamboo let's you run, build and deploy images and containers with ease.

Docker is picking up a lot of traction today and rightly so. Docker containers provide consistency in the turbulent world of software development environments. They allow dev and operations teams to get customers the applications they need now – all while providing a consistent environment that makes working together a whole lot easier. 

To learn more about how Docker and Atlassian can help your dev team work faster and smarter, contact Praecipio Consulting.

About Brendan Kelly

Brendan is a Consultant & Solutions Specialist at Praecipio Consulting where he enables the sales team through technical discovery, training and product demos. When Brendan isn't delivering best-in-class business technology solutions, he can be found in the Austin Green Belt hiking and bouldering. 

Topics: atlassian blog automation continuous-delivery bamboo docker optimization process standardize testing continuous-integration deployment development environment integration cicd
4 min read

Hey Atlassian Users: Easy Release Management with Bamboo 3.2!

By Praecipio Consulting on Jul 28, 2011 11:00:00 AM

Bamboo 3.2 Now Available

Automate your complete release process down to one-click, add manual Stages to your deployment process, and re-run failed Stages with the newest version of Atlassian’s continuous integration server, Bamboo 3.2.

What’s New in Bamboo 3.2

1. Release Management
The dream scenario with any release process is to automate all of your release activities down to the click of a single button. Bamboo 3.2 and the new Release Management plugin for the Jira bug tracker aims to do just that – one-click release management.

  • Prevent mistakes from being made as part of a long, manual release process
  • Remove the barrier to release
  • Speed up the release – the more often you do it, the faster you will make it
  • Manage all your releases from a centralized and controlled location
  • Use the same streamlined, automated process every time you release

Release in Jira, build in Bamboo! Create a release pipeline in Bamboo to automate your release process: use Stages, Jobs and Tasks to build, run tests, generate release artifacts, publish and deploy your release. Then initiate your release activity or event with one-click directly from Jira when you’re ready.

Run a release build in Bamboo from the Jira Versions tab without leaving Jira. 

When releasing a version in Jira you will have the option to run Bamboo builds.

If the build is successful the version will be released in Jira.

Automate the steps that traditionally are performed to release an application:

  • Building and testing
  • Tag the releases, assign a version
  • Create and populate the release branch
  • Deploy the release to a a deployment server or production environment
  • Release the new version in Jira, move the unresolved issues to the next release
  • Release or activate the new version in Production

Bamboo ships with a number of Tasks to build and deploy including Tasks to tag or branch a repository.

For Jira-Bamboo users the latest release of the Bamboo-Jira plugin is now compatible with Jira 4.3 and provides this release management functionality.

2. Manual Stages
Manual Stages allow you to interrupt/halt/suspend automatic build execution at a specific Stage in the build plan. For Plan execution to continue a user must manually trigger the Stage.

  • The default behavior of any Build Plan in Bamboo is to go to the next Stage upon successful completion of the current stage. Depending on your needs you may need to introduce a manual checkpoint into your build plan before going on to the next Stage:
  • Use a manual stage for deployment to give your QA team a chance to perform a few manual tests before your software goes into production
  • In a release pipeline, you may want to separate your ‘publish’ step from your ‘install’ step and install only after backups or clean shutdowns have been confirmed
  • Introduce a ‘quality’ gate, between build and deploy stages, to allow members of your team to approve and promote a particular build
  • Any other step that’s difficult to automate or that requires special attention

 

 

3. Re-run Failed Stages
It’s not always the code that is broken. Infrastructure problems and other issues can cause a Job, and therefore the Plan, to fail. In these scenarios Bamboo can re-run failed Jobs without having to re-run the entire Plan once you’ve resolved the problems. This can save heaps of time and build resources.

 

4. Filter Bamboo Dashboard by Labels
Bamboo now allows you to label your build Plans. The Bamboo Dashboard can be filtered to only show plans with labels that you are interested in. Filter out the noise on your Bamboo Dashboard.

Hint: When viewing a Plan use the keyboard shortcut “l” to bring up the label dialog for the Plan. When viewing the Bamboo Dashboard press “l” to filter the dashboard by label.

And More…

  • Improved Jira integration – delegate user management to Jira, easier application linking
  • EC2 improvements

This release has over 50 new features and improvements implemented. Check out the full release notes for more details.

Also make sure to check out the new agile testing tool for Jira, Atlassian Bonfire.

Ready to download?

Download Bamboo 3.2 now to get started with a 30-day FREE trial or upgrade your current instance.

Topics: jira atlassian blog automation bamboo confluence dashboard management plan process release software deployment environment integration marketplace-apps
1 min read

SmartGrid: The Future of Electric Power

By Praecipio Consulting on Apr 14, 2011 11:00:00 AM

SmartGrid technology is the effective future of the electric power industry. Just consider the numbers: the US SmartGrid market is expected to double in size between 2009 and 2014, from $21.4 billion to $42.8 billion, with global SmartGrid spending exceeding $200 billion in 2015. With significant aid from federal stimulus funding, SmartGrid development and implementation has already begun across the US. Experts expect SmartGrid technology to become the electric industry standard within 20 years.

You’re probably familiar with what SmartGrids can do. If you’re not, think improved energy consumption information + customer empowerment. SmartGrids leverage automated power systems that monitor and control grid activities, ensuring a constant two-way flow of electricity and information between plants, consumers, and points in between. That information will originate from millions of data points scattered among system devices, enabling utilities to adapt electricity delivery to usage patterns. Demand-response software will enable utilities and consumers to turn high-demand appliances on and off during peak demand periods, improving efficiency. Technology can allow consumers to monitor their home’s energy consumption at the appliance-level (dishwasher, refrigerator, etc), and adjust their thermostats and other power-consuming devices via computers and mobile phones. Basically, SmartGrids will allow consumers and grid operators to understand what’s going on demand-side and make grid management more intelligent.

Information technology (IT) is the driver of SmartGrid technology. Custom software, data management, systems integration, and data security are critical to SmartGrid operations. We bring these solutions to utilities en route to SmartGrid deployment. If you’re making the move, talk to us. We prepare companies for the switch.

Topics: blog management software technology security smartgrid utilities data deployment information integration it operations bespoke

Praecipio Consulting is an Atlassian Platinum Partner

This means that we have the most experience working with Atlassian tools and have insight into new products, features, and beta testing. Through our profound knowledge of Atlassian environments and their intricacies, we can guide your organization as you navigate these important changes.

atlassian-platinum-solution-partner-enterprise

In need of professional assistance?

WE'VE GOT YOUR BACK

Contact Us