# Tutorials Introduction

Welcome to the epics-containers tutorial series.

These tutorials will introduce you to building, deploying and managing
containerized EPICS IOCs. They are intended to be self contained
and should be possible to work through without any prior knowledge.

However, to get the most out of the tutorials it would be best to start with
some background in the following topics.

```{eval-rst}
================================================================    ================
**An introduction to containers**                                   https://www.docker.com/resources/what-container/
**Managing containers on a workstation: introduction to docker**    https://docs.docker.com/get-started/overview/
**Introduction to docker compose**                                  https://docs.docker.com/compose/
**Podman, a recommended docker alternative**                        https://docs.podman.io/en/latest/Introduction.html
**Orchestrating containers in a cluster with Kubernetes**           https://kubernetes.io/docs/concepts/overview/
**Managing packages in a Kubernetes Cluster with Helm**             https://helm.sh/docs/intro/quickstart/
**Introduction to EPICS**                                           https://docs.epics-controls.org/en/latest/guides/EPICS_Intro.html
**Argo CD continuous deployment for Kubernetes**                    https://argo-cd.readthedocs.io/en/stable/
================================================================    ================
```

With the above background in hand you should then read the overview of
epics-containers architecture here: {any}`../explanations/introduction`

To work through the tutorials you will need a workstation which can be
Linux, Mac or Windows. All the software required is open source and available
for download. You will also need to have a GitHub account which you can create
for free.