Welcome to our Tutorial! Portable, Reproducible High Performance Computing In the Cloud Block 1: Intro to Docker Introduction to Jupyter Starting a Jupyter Notebook Creating a Notebook Starting a Terminal Using Docker What is a container? Containers vs VMs The Docker Platform Initial Setup Docker Images and Tags, Docker Hub, and Pulling Images Building Images from a Dockerfile Running a Docker Container Removing Docker Containers Block 2: Using Abaco Intro to Abaco What is Abaco? Using Abaco Registering an Actor Executing an Actor Executing Actors with Raw Strings Executing Actors with JSON Retrieving the Logs Running the Image classifier with Abaco Preparing our Code for Abaco Creating and Actor Executing Actor with curl Executing Actor with Python Block 3: Intro to Singularity and Tapis(Agave) CLI & Systems Intro to Singularity Intro to Tapis(Agave) Intro to Tapis CLI Intro to Tapis Systems Block 4: Intro to Tapis(Agave) Apps & Tapis(Aloe) Jobs Intro to Apps What is a Tapis(Agave) app? Tapis(Agave) Apps service App Packaging Application metadata Registering App List Apps Managing App Permissions Intro to Tapis(Aloe) Jobs Tapis(Aloe) Jobs Service Jobs Parameters Submitting a Job Jobs List Jobs Status Jobs Output Jobs Notifications Link to Templates