> For the complete documentation index, see [llms.txt](https://ibm-developer.gitbook.io/cloudpakforapplications-appmod/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ibm-developer.gitbook.io/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md).

# Introduction

## App Modernization Workshop

In the workshop you will learn about foundational open source technologies and industry-wide accepted best practices for building modern, scalable, portable, and robust applications. You will learn migration strategies for moving legacy, monolithic WAS applications into Liberty containers running on Red Hat OpenShift, and some of the common pitfalls to watch out for.

* [App Modernization Workshop](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#app-modernization-workshop)
* [Lab Setup](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#lab-setup)
* [Day 1](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#day-1)
* [Day 2](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#day-2)
* [Day 3](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#day-3)
* [Technology Used](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#technology-used)
* [Presenters](/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md#presenters)

## Lab Setup

|                                                                                                                                                 |                                                        |
| ----------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ |
| [Cloud Workshop + Cloud Shell Setup Instructions](/cloudpakforapplications-appmod/workshop-07-07-2020/setup/cloudworkshopk8swithwebterminal.md) | Run these steps to setup your environment for the labs |

## Day 1

| Topic                                                                                       | Description                       |
| ------------------------------------------------------------------------------------------- | --------------------------------- |
| Welcome, Introductions, Objectives and Setup                                                | -                                 |
| [Lecture: Overview of Docker](https://ibm.box.com/s/0mvlb8hvd8lx23smfvoaijdt9ex63go2)       |                                   |
| [Lecture: Overview of Kubernetes](https://ibm.box.com/s/p8jqmihxterlpsrvg5d35yihs0am4c8g)   |                                   |
| BREAK                                                                                       |                                   |
| [Lab: Kubernetes 101](/cloudpakforapplications-appmod/workshop-07-07-2020/day-1/kube101.md) | Deploying, Scaling, and Operators |
| LUNCH                                                                                       |                                   |
| [Lecture: Helm](https://ibm.box.com/s/cluclg99642s5bgi6j2wixr37jg7nw96)                     | Helm Overview Lecture             |
| [Lab: Helm](/cloudpakforapplications-appmod/workshop-07-07-2020/day-1/helm101.md)           | Series of Helm Labs               |
| RECAP and Survey                                                                            |                                   |

&#x20;**Install helm v3**

```
curl -LO https://raw.githubusercontent.com/remkohdev/setup/master/install-helm.sh
chmod 755 install-helm.sh
./install-helm.sh
helm version --short
```

## Day 2

| Topic                                                                                                                         | Description                                                        |
| ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| Welcome, Day 1 Recap / Questions                                                                                              |                                                                    |
| [Lecture: Istio](https://ibm.box.com/s/4al8hgpzj90vuus55i9fmcw856qz1bt1)                                                      | Overview of Istio Service Mesh                                     |
| [Lab: Istio](/cloudpakforapplications-appmod/workshop-07-07-2020/day-2/istio101/setup.md)                                     | Working with Istio (Deploying Applications and Traffic Management) |
| BREAK                                                                                                                         |                                                                    |
| [Lab: Add Secure Object Storage to MongoDB](/cloudpakforapplications-appmod/workshop-07-07-2020/day-2/lab-02.md)              |                                                                    |
| LUNCH                                                                                                                         |                                                                    |
| [Lecture: Overview of Kubernetes Extensions](https://ibm.box.com/s/c7r9vsfdqtev76p1nqvdvumnoc6cai7m)                          |                                                                    |
| [Lab: Custom Resources and Operators](/cloudpakforapplications-appmod/workshop-07-07-2020/day-2/kubernetes-extensions.git.md) |                                                                    |
| RECAP and Survey                                                                                                              |                                                                    |

**Install helm v3**

```
curl -LO https://raw.githubusercontent.com/remkohdev/setup/master/install-helm.sh
chmod 755 install-helm.sh
./install-helm.sh
helm version --short
```

**Install Go**

```
curl -LO https://golang.org/dl/go1.14.4.linux-amd64.tar.gz 
tar -C /usr/local -xzf go1.14.4.linux-amd64.tar.gz 
export PATH=$PATH:/usr/local/go/bin
go version
```

**Install the Operator SDK**

```
curl -LO https://github.com/operator-framework/operator-sdk/releases/download/v0.18.2/operator-sdk-v0.18.2-x86_64-linux-gnu 
chmod +x operator-sdk-v0.18.2-x86_64-linux-gnu 
sudo mkdir -p /usr/local/bin/ 
sudo cp operator-sdk-v0.18.2-x86_64-linux-gnu /usr/local/bin/operator-sdk 
rm operator-sdk-v0.18.2-x86_64-linux-gnu
operator-sdk version
```

## Day 3

| Topic                                                                                                            | Description                               |
| ---------------------------------------------------------------------------------------------------------------- | ----------------------------------------- |
| Welcome, Day 2 Recap / Questions                                                                                 |                                           |
| [Overview of CI/CD for Microservices](https://ibm.box.com/s/8y9yglljd4yd7xmdo501o1xyqta3p9q9)                    |                                           |
| [Lab: Source-to-Image (S2I)](/cloudpakforapplications-appmod/workshop-07-07-2020/day-3/lab-03.md)                | S2I with Custom Builder and Runtime Image |
| BREAK                                                                                                            |                                           |
| [Lecture: Overview of Tekton Pipelines](https://ibm.box.com/s/kisshn88w4a79jzz557o5h6c5k55o9ze)                  | Tekton Overview Lecture                   |
| [Lab: Tekton on OpenShift](/cloudpakforapplications-appmod/workshop-07-07-2020/day-3/tekton-lab/tekton-setup.md) | Tekton Pipelines in OpenShift Lab         |
| LUNCH                                                                                                            |                                           |
| Overview of Multi-Cloud Management and Policy Governance by Greg                                                 |                                           |
| RECAP and Survey                                                                                                 |                                           |

**Install S2I**

```
cd $HOME
curl -L -O https://github.com/openshift/source-to-image/releases/download/v1.3.0/source-to-image-v1.3.0-eed2850f-linux-amd64.tar.gz
tar -xvf source-to-image-v1.3.0-eed2850f-linux-amd64.tar.gz
mv s2i /usr/local/bin
rm source-to-image-v1.3.0-eed2850f-linux-amd64.tar.gz
s2i version
```

## Technology Used

* Docker
* Kubernetes
* Helm
* RedHat OpenShift
* IBM Kubernetes Service
* Istio

## Presenters

* [Remko de Knikker](https://github.com/remkohdev)
* [John Zaccone](https://github.com/jzaccone)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://ibm-developer.gitbook.io/cloudpakforapplications-appmod/workshop-07-07-2020/undefined.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
