Giter VIP home page Giter VIP logo

continuous-delivery-cloud-native-java-apps-2423655's Introduction

Continuous Delivery for Cloud Native Java Apps

This is the repository for the LinkedIn Learning course Continuous Delivery for Cloud Native Java Apps. The full course is available from LinkedIn Learning.

Continuous Delivery for Cloud Native Java Apps

Throughout its history, Java has continuously evolved to embrace and adapt to new innovations, from cloud to containers to microservices. This transformation has changed the way teams build and deliver Java applications, and in this course, Kevin Bowersox explains how to establish a continuous delivery pipeline to automate the release process for your applications. Kevin shows how to integrate popular tools like Maven, Jenkins, and Docker to build and package modern Java apps, and explains how tools like Kustomize and Argo CD are used to automate their deployment. If you’re a Java developer looking for a toolset that will accelerate your release cadence without sacrificing your application’s stability, this is the course for you.

Instructions

This repository has branches for each of the videos in the course. You can use the branch pop up menu in github to switch to a specific branch and take a look at the course at that stage, or you can add /tree/BRANCH_NAME to the URL to go to the branch you want to access.

Branches

The branches are structured to correspond to the videos in the course. The naming convention is CHAPTER#_MOVIE#. As an example, the branch named 02_03 corresponds to the second chapter and the third video in that chapter. Some branches will have a beginning and an end state. These are marked with the letters b for "beginning" and e for "end". The b branch contains the code as it is at the beginning of the movie. The e branch contains the code as it is at the end of the movie. The main branch holds the final state of the code when in the course.

When switching from one exercise files branch to the next after making changes to the files, you may get a message like this:

error: Your local changes to the following files would be overwritten by checkout:        [files]
Please commit your changes or stash them before you switch branches.
Aborting

To resolve this issue:

Add changes to git using this command: git add .
Commit changes using this command: git commit -m "some message"

Lab Environment

This course is accompanied by a lab environment that includes the required tools and platforms for completing the exercise files in the course. The lab environment is setup using Vagrant and runs within an Ubuntu virtual machine on your workstation using VirtualBox. The Vagrantfile is found within the lab-setup directory within the exercise files for the course. At a minimum, the lab envrionment will require 8GB of RAM and 3 CPUs to run the virtual machine.

Within the lab environment, you will find a copy of the exercise files in their initial state located on the desktop. The exercise files are not managed with Git, so you must copy the files for a particular lesson into the virtual machine from the exercise files stored on your local workstation outside of the virtual machine. This is necessary because throughout the course you will create Git repositories for the individual microservices found inside the exercise files directory.

Installing

  1. To launch the lab environment, you must have the following installed:
  2. Clone this repository into your local machine using the terminal (Mac), CMD (Windows), or a GUI tool like SourceTree.
  3. Navigate into the lab-setup directory within the exercise files via the command line.
  4. Install the VBguest Plugin Version 0.30.0 using the command: vagrant plugin install vagrant-vbguest
  5. Launch the lab using the command: vagrant up

Instructor

Kevin Bowersox

Web application developer

Check out my other courses on LinkedIn Learning.

continuous-delivery-cloud-native-java-apps-2423655's People

Contributors

kmb385 avatar smoser-lil 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.