diff --git a/slides/index.yaml b/slides/index.yaml index e70b1bd..5e25938 100644 --- a/slides/index.yaml +++ b/slides/index.yaml @@ -8,1008 +8,39 @@ #attend: https://enix.io/fr/services/formation/online/ slides: https://training.verleun.org/intro-triodos-1-day.yml.html#1 -- date: 2023-02-10 +- date: 2023-04-24 country: nl - city: Apeldoorn - event: bd + city: Geldrop + event: T-DOSE 2023 speaker: mverleun - title: Introduction to containers + title: Improving container security lang: nl - slides: https://training.verleun.org/intro-bd-docker.yml.html#1 + #attend: https://enix.io/fr/services/formation/online/ + slides: https://training.verleun.org/intro-container-security.yml.html#1 -- date: 2023-02-10 - country: nl - city: Apeldoorn - event: bd - speaker: mverleun - title: Introduction to kubernetes - lang: nl - slides: https://training.verleun.org/intro-bd-docker.yml.html#1 - - -# - date: [2021-10-04, 2021-10-07] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# #slides: https://2021-05-enix.container.training/2.yml.html - -# - date: [2021-10-11, 2021-10-12] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Packaging et CI/CD pour Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# #slides: https://2021-05-enix.container.training/3.yml.html - -# - date: [2021-11-08, 2021-11-16] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes avancé (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# #slides: https://2021-05-enix.container.training/4.yml.html - -# - date: [2021-11-18, 2021-11-19] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# #slides: https://2021-05-enix.container.training/5.yml.html - -# - date: [2021-05-10, 2021-05-12] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Docker intensif (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-05-enix.container.training/1.yml.html - -# - date: [2021-05-17, 2021-05-20] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-05-enix.container.training/2.yml.html - -# - date: [2021-05-24, 2021-05-25] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Packaging et CI/CD pour Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-05-enix.container.training/3.yml.html - -# - date: [2021-05-26, 2021-05-28] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes avancé (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-05-enix.container.training/4.yml.html - -# - date: [2021-05-31, 2021-06-01] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-05-enix.container.training/5.yml.html - -# - date: [2021-02-08, 2021-02-10] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Docker intensif (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-02-enix.container.training/1.yml.html - -# - date: [2021-02-15, 2021-02-18] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-02-enix.container.training/2.yml.html - -# - date: [2021-02-22, 2021-02-23] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Packaging et CI/CD pour Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-02-enix.container.training/3.yml.html - -# - date: [2021-02-24, 2021-02-26] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes avancé (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-02-enix.container.training/4.yml.html - -# - date: [2021-03-01, 2021-03-02] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2021-02-enix.container.training/5.yml.html - -# - date: [2020-10-05, 2020-10-06] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Docker intensif (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-10-enix.container.training/1.yml.html - -# - date: [2020-10-07, 2020-10-09] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-10-enix.container.training/2.yml.html - -# - date: 2020-10-12 -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Packaging pour Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-10-enix.container.training/3.yml.html - -# - date: [2020-10-13, 2020-10-14] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes avancé (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-10-enix.container.training/4.yml.html - -# - date: [2020-10-19, 2020-10-20] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-10-enix.container.training/5.yml.html - -# - date: [2020-09-28, 2020-10-01] -# country: www -# city: streaming -# event: Skills Matter -# speaker: jpetazzo -# title: Advanced Kubernetes Concepts -# attend: https://skillsmatter.com/courses/700-advanced-kubernetes-concepts-workshop-jerome-petazzoni -# slides: https://2020-09-skillsmatter.container.training/ - -# - date: [2020-08-29, 2020-08-30] -# country: www -# city: streaming -# event: fwdays -# speaker: jpetazzo -# title: Intensive Docker Online Workshop -# attend: https://fwdays.com/en/event/intensive-docker-workshop -# slides: https://2020-08-fwdays.container.training/ - -# - date: [2020-09-12, 2020-09-13] -# country: www -# city: streaming -# event: fwdays -# speaker: jpetazzo -# title: Kubernetes Intensive Online Workshop -# attend: https://fwdays.com/en/event/kubernetes-intensive-workshop -# slides: https://2020-09-fwdays.container.training/ - -# - date: [2020-07-07, 2020-07-09] -# country: www -# city: streaming -# event: Ardan Live -# speaker: jpetazzo -# title: Intensive Docker Bootcamp -# attend: https://www.eventbrite.com/e/livestream-intensive-docker-bootcamp-tickets-103258886108 - -# - date: [2020-06-15, 2020-06-16] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Docker intensif (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-06-enix.container.training/1.yml.html - -# - date: [2020-06-17, 2020-06-19] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-06-enix.container.training/2.yml.html - -# - date: 2020-06-22 -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Packaging pour Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-06-enix.container.training/3.yml.html - -# - date: [2020-06-23, 2020-06-24] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes avancé (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-06-enix.container.training/4.yml.html - -# - date: [2020-06-25, 2020-06-26] -# country: www -# city: streaming -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (en français) -# lang: fr -# attend: https://enix.io/fr/services/formation/online/ -# slides: https://2020-06-enix.container.training/5.yml.html - - -# - date: [2020-06-09, 2020-06-11] -# country: www -# city: streaming -# event: Ardan Live -# speaker: jpetazzo -# title: Intensive Kubernetes Bootcamp -# attend: https://www.eventbrite.com/e/livestream-intensive-kubernetes-bootcamp-tickets-103262336428 - -# - date: [2020-05-04, 2020-05-08] -# country: www -# city: streaming -# event: Ardan Live -# speaker: jpetazzo -# title: Intensive Kubernetes - Advanced Concepts -# attend: https://www.eventbrite.com/e/livestream-intensive-kubernetes-advanced-concepts-tickets-102358725704 - -# - date: [2020-03-30, 2020-04-02] -# country: www -# city: streaming -# event: Ardan Live -# speaker: jpetazzo -# title: Intensive Docker and Kubernetes -# attend: https://www.eventbrite.com/e/ardan-labs-live-worldwide-march-30-april-2-2020-tickets-100331129108# -# slides: https://2020-03-ardan.container.training/ - -# - date: 2020-03-06 -# country: uk -# city: London -# event: QCON -# speaker: jpetazzo -# title: Kubernetes Intensive Course -# attend: https://qconlondon.com/london2020/workshop/kubernetes-intro -# slides: https://2020-03-qcon.container.training/ - -# - date: 2020-03-05 -# country: uk -# city: London -# event: QCON -# speaker: jpetazzo -# title: Docker Intensive Course -# attend: https://qconlondon.com/london2020/workshop/docker-intensive-course -# slides: https://2020-03-qcon.container.training/ - -# - date: 2020-02-03 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Conteneurs et Docker (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/ -# slides: https://2020-02-enix.container.training/ - -# - date: 2020-02-04 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Fondamentaux Orchestration et Kubernetes (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/ -# slides: https://2020-02-enix.container.training/ - -# - date: 2020-02-05 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes et Méthodologies DevOps (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/ -# slides: https://2020-02-enix.container.training/ - -# - date: 2020-02-06 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Kubernetes Avancé (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/ -# slides: https://2020-02-enix.container.training/ - -# - date: 2020-02-07 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer Kubernetes (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/ -# slides: https://2020-02-enix.container.training/ - -# - date: [2019-11-04, 2019-11-05] -# country: de -# city: Berlin -# event: Velocity -# speaker: jpetazzo -# title: Deploying and scaling applications with Kubernetes -# attend: https://conferences.oreilly.com/velocity/vl-eu/public/schedule/detail/79109 -# slides: https://velocity-2019-11.container.training/ - -# - date: 2019-11-13 -# country: fr -# city: Marseille -# event: DevopsDDay -# speaker: jpetazzo -# title: Déployer ses applications avec Kubernetes (in French) -# lang: fr -# attend: http://2019.devops-dday.com/Workshop.html - -# - date: 2019-10-30 -# country: us -# city: Portland, OR -# event: LISA -# speaker: jpetazzo -# title: Deep Dive into Kubernetes Internals for Builders and Operators -# attend: https://www.usenix.org/conference/lisa19/presentation/petazzoni-tutorial - -# - date: [2019-10-22, 2019-10-24] -# country: us -# city: Charlotte, NC -# event: Ardan Labs -# speaker: jpetazzo -# title: Kubernetes Training -# attend: https://www.eventbrite.com/e/containers-docker-and-kubernetes-training-for-devs-and-ops-charlotte-nc-november-2019-tickets-73296659281 - -# - date: 2019-10-22 -# country: us -# city: Charlotte, NC -# event: Ardan Labs -# speaker: jpetazzo -# title: Docker & Containers Training -# attend: https://www.eventbrite.com/e/containers-docker-and-kubernetes-training-for-devs-and-ops-charlotte-nc-november-2019-tickets-73296659281 - -# - date: 2019-10-22 -# country: de -# city: Berlin -# event: GOTO -# speaker: bretfisher -# title: Kubernetes or Swarm? Build Both, Deploy Apps, Learn The Differences -# attend: https://gotober.com/2019/workshops/194 - -# - date: [2019-09-24, 2019-09-25] -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Déployer ses applications avec Kubernetes (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/deployer-ses-applications-avec-kubernetes/ -# slides: https://kube-2019-09.container.training/ - -# - date: 2019-08-27 -# country: tr -# city: Izmir -# event: HacknBreak -# speaker: gurayyildirim -# title: Deploying and scaling applications with Kubernetes (in Turkish) -# lang: tr -# attend: https://hacknbreak.com - -# - date: 2019-08-26 -# country: tr -# city: Izmir -# event: HacknBreak -# speaker: gurayyildirim -# title: Container Orchestration with Docker and Swarm (in Turkish) -# lang: tr -# attend: https://hacknbreak.com - -# - date: 2019-08-25 -# country: tr -# city: Izmir -# event: HackBreak -# speaker: gurayyildirim -# title: Introduction to Docker and Containers (in Turkish) -# lang: tr -# attend: https://hacknbreak.com - -# - date: 2019-07-16 -# country: us -# city: Portland, OR -# event: OSCON -# speaker: bridgetkromhout -# title: "Kubernetes 201: Production tooling" -# attend: https://conferences.oreilly.com/oscon/oscon-or/public/schedule/detail/76390 -# slides: https://oscon2019.container.training - -# - date: 2019-06-17 -# country: ca -# city: Montréal -# event: Zenika -# speaker: jpetazzo -# title: Getting Started With Kubernetes -# attend: https://www.eventbrite.com/e/getting-started-with-kubernetes-1-day-en-tickets-61658444066 - -# - date: [2019-06-10, 2019-06-11] -# city: San Jose, CA -# country: us -# event: Velocity -# title: Kubernetes for administrators and operators -# speaker: jpetazzo -# attend: https://conferences.oreilly.com/velocity/vl-ca/public/schedule/detail/75313 -# slides: https://kadm-2019-06.container.training/ - -# - date: 2019-05-01 -# country: us -# city: Cleveland, OH -# event: PyCon -# speaker: jpetazzo, s0ulshake -# title: Getting started with Kubernetes and container orchestration -# attend: https://us.pycon.org/2019/schedule/presentation/74/ -# slides: https://pycon2019.container.training/ -# video: https://www.youtube.com/watch?v=J08MrW2NC1Y - -# - date: 2019-04-28 -# country: us -# city: Chicago, IL -# event: GOTO -# speaker: jpetazzo -# title: Getting Started With Kubernetes and Container Orchestration -# attend: https://gotochgo.com/2019/workshops/148 -# slides: https://gotochgo2019.container.training/ - -# - date: 2019-04-26 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Opérer et administrer Kubernetes -# attend: https://enix.io/fr/services/formation/operer-et-administrer-kubernetes/ -# slides: https://kadm-2019-04.container.training/ - -# - date: [2019-04-23, 2019-04-24] -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Déployer ses applications avec Kubernetes (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/deployer-ses-applications-avec-kubernetes/ -# slides: https://kube-2019-04.container.training/ - -# - date: [2019-04-15, 2019-04-16] -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: "jpetazzo, alexbuisine" -# title: Bien démarrer avec les conteneurs (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/bien-demarrer-avec-les-conteneurs/ -# slides: http://intro-2019-04.container.training/ - -# - date: 2019-03-08 -# country: uk -# city: London -# event: QCON -# speaker: jpetazzo -# title: Getting Started With Kubernetes and Container Orchestration -# attend: https://qconlondon.com/london2019/workshop/getting-started-kubernetes-and-container-orchestration -# slides: https://qconuk2019.container.training/ -# video: https://www.youtube.com/playlist?list=PLBAFXs0YjviJwCoxSUkUPhsSxDJzpZbJd - -# - date: [2019-01-07, 2019-01-08] -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: "jpetazzo, alexbuisine" -# title: Bien démarrer avec les conteneurs (in French) -# lang: fr -# attend: https://enix.io/fr/services/formation/bien-demarrer-avec-les-conteneurs/ -# slides: https://intro-2019-01.container.training - -# - date: [2018-12-17, 2018-12-18] -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: "jpetazzo, rdegez" -# title: Déployer ses applications avec Kubernetes -# lang: fr -# attend: https://enix.io/fr/services/formation/deployer-ses-applications-avec-kubernetes/ -# slides: http://decembre2018.container.training - -# - date: 2018-11-08 -# city: San Francisco, CA -# country: us -# event: QCON -# title: Introduction to Docker and Containers -# speaker: zeroasterisk -# attend: https://qconsf.com/sf2018/workshop/introduction-docker-and-containers - -# - date: 2018-11-08 -# city: San Francisco, CA -# country: us -# event: QCON -# title: Getting Started With Kubernetes and Container Orchestration -# speaker: jpetazzo -# attend: https://qconsf.com/sf2018/workshop/getting-started-kubernetes-and-container-orchestration-thursday-section -# slides: http://qconsf2018.container.training/ - -# - date: 2018-11-09 -# city: San Francisco, CA -# country: us -# event: QCON -# title: Getting Started With Kubernetes and Container Orchestration -# speaker: jpetazzo -# attend: https://qconsf.com/sf2018/workshop/getting-started-kubernetes-and-container-orchestration-friday-section -# slides: http://qconsf2018.container.training/ - -# - date: 2018-10-31 -# city: London, UK -# country: uk -# event: Velocity EU -# title: Kubernetes 101 -# speaker: bridgetkromhout -# slides: https://velocityeu2018.container.training -# attend: https://conferences.oreilly.com/velocity/vl-eu/public/schedule/detail/71149 - -# - date: 2018-10-30 -# city: London, UK -# country: uk -# event: Velocity EU -# title: "Docker Zero to Hero: Docker, Compose and Production Swarm" -# speaker: bretfisher -# attend: https://conferences.oreilly.com/velocity/vl-eu/public/schedule/detail/71231 - -# - date: 2018-07-12 -# city: Minneapolis, MN -# country: us -# event: devopsdays Minneapolis -# title: Kubernetes 101 -# speaker: "ashleymcnamara, bketelsen" -# slides: https://devopsdaysmsp2018.container.training -# attend: https://www.devopsdays.org/events/2018-minneapolis/registration/ - -# - date: 2018-10-01 -# city: New York, NY -# country: us -# event: Velocity -# title: Kubernetes 101 -# speaker: bridgetkromhout -# attend: https://conferences.oreilly.com/velocity/vl-ny/public/schedule/detail/70102 -# slides: https://velny-k8s101-2018.container.training - -# - date: 2018-10-01 -# city: New York, NY -# country: us -# event: Velocity -# title: Kubernetes Bootcamp - Deploying and Scaling Microservices -# speaker: jpetazzo -# attend: https://conferences.oreilly.com/velocity/vl-ny/public/schedule/detail/69875 -# slides: https://k8s2d.container.training - -# - date: 2018-10-01 -# city: New York, NY -# country: us -# event: Velocity -# title: "Docker Zero to Hero: Docker, Compose and Production Swarm" -# speaker: bretfisher -# attend: https://conferences.oreilly.com/velocity/vl-ny/public/schedule/detail/70147 - -# - date: 2018-09-17 -# country: fr -# city: Paris -# event: ENIX SAS -# speaker: jpetazzo -# title: Déployer ses applications avec Kubernetes -# lang: fr -# attend: https://enix.io/fr/services/formation/deployer-ses-applications-avec-kubernetes/ -# slides: https://septembre2018.container.training - -# - date: 2018-07-17 -# city: Portland, OR -# country: us -# event: OSCON -# title: Kubernetes 101 -# speaker: bridgetkromhout -# slides: https://oscon2018.container.training/ -# attend: https://conferences.oreilly.com/oscon/oscon-or/public/schedule/detail/66287 - -# - date: 2018-06-27 -# city: Amsterdam +# - date: 2023-02-10 # country: nl -# event: devopsdays -# title: Kubernetes 101 -# speaker: bridgetkromhout -# slides: https://devopsdaysams2018.container.training -# attend: https://www.devopsdays.org/events/2018-amsterdam/registration/ +# city: Apeldoorn +# event: bd +# speaker: mverleun +# title: Introduction to containers +# lang: nl +# slides: https://training.verleun.org/intro-bd-docker.yml.html#1 -# - date: 2018-06-12 -# city: San Jose, CA -# country: us -# event: Velocity -# title: Kubernetes 101 -# speaker: bridgetkromhout -# slides: https://velocitysj2018.container.training -# attend: https://conferences.oreilly.com/velocity/vl-ca/public/schedule/detail/66286 - -# - date: 2018-06-12 -# city: San Jose, CA -# country: us -# event: Velocity -# title: "Kubernetes two-day kickstart: Deploying and Scaling Microservices with Kubernetes" -# speaker: "bketelsen, erikstmartin" -# slides: http://kubernetes.academy/kube-fullday.yml.html#1 -# attend: https://conferences.oreilly.com/velocity/vl-ca/public/schedule/detail/66932 - -# - date: 2018-06-11 -# city: San Jose, CA -# country: us -# event: Velocity -# title: "Kubernetes two-day kickstart: Introduction to Docker and Containers" -# speaker: "bketelsen, erikstmartin" -# slides: http://kubernetes.academy/intro-fullday.yml.html#1 -# attend: https://conferences.oreilly.com/velocity/vl-ca/public/schedule/detail/66932 - -# - date: 2018-05-17 -# city: Virginia Beach, FL -# country: us -# event: Revolution Conf -# title: Docker 101 -# speaker: bretfisher -# slides: https://revconf18.bretfisher.com - -# - date: 2018-05-10 -# city: Saint Paul, MN -# country: us -# event: NDC Minnesota -# title: Kubernetes 101 -# slides: https://ndcminnesota2018.container.training - -# - date: 2018-05-08 -# city: Budapest -# country: hu -# event: CRAFT -# title: Swarm Orchestration -# slides: https://craftconf18.bretfisher.com - -# - date: 2018-04-27 -# city: Chicago, IL -# country: us -# event: GOTO -# title: Swarm Orchestration -# slides: https://gotochgo18.bretfisher.com - -# - date: 2018-04-24 -# city: Chicago, IL -# country: us -# event: GOTO -# title: Kubernetes 101 -# slides: http://gotochgo2018.container.training/ - -# - date: 2018-04-11 -# city: Paris -# country: fr -# title: Introduction aux conteneurs -# lang: fr -# slides: https://avril2018.container.training/intro.yml.html - -# - date: 2018-04-13 -# city: Paris -# country: fr -# lang: fr -# title: Introduction à l'orchestration -# slides: https://avril2018.container.training/kube.yml.html - -# - date: 2018-04-06 -# city: Sacramento, CA -# country: us -# event: MuraCon -# title: Docker 101 -# slides: https://muracon18.bretfisher.com - -# - date: 2018-03-27 -# city: Santa Clara, CA -# country: us -# event: SREcon Americas -# title: Kubernetes 101 -# slides: http://srecon2018.container.training/ - -# - date: 2018-03-27 -# city: Bergen -# country: no -# event: Boosterconf -# title: Kubernetes 101 -# slides: http://boosterconf2018.container.training/ - -# - date: 2018-02-22 -# city: San Francisco, CA -# country: us -# event: IndexConf -# title: Kubernetes 101 -# slides: http://indexconf2018.container.training/ -# #attend: https://developer.ibm.com/indexconf/sessions/#!?id=5474 - -# - date: 2017-11-17 -# city: San Francisco, CA -# country: us -# event: QCON SF -# title: Orchestrating Microservices with Docker Swarm -# slides: http://qconsf2017swarm.container.training/ - -# - date: 2017-11-16 -# city: San Francisco, CA -# country: us -# event: QCON SF -# title: Introduction to Docker and Containers -# slides: http://qconsf2017intro.container.training/ -# video: https://www.youtube.com/playlist?list=PLBAFXs0YjviLgqTum8MkspG_8VzGl6C07 - -# - date: 2017-10-30 -# city: San Franciso, CA -# country: us -# event: LISA -# title: (M7) Getting Started with Docker and Containers -# slides: http://lisa17m7.container.training/ - -# - date: 2017-10-31 -# city: San Franciso, CA -# country: us -# event: LISA -# title: (T9) Build, Ship, and Run Microservices on a Docker Swarm Cluster -# slides: http://lisa17t9.container.training/ - -# - date: 2017-10-26 -# city: Prague -# country: cz -# event: Open Source Summit Europe -# title: Deploying and scaling microservices with Docker and Kubernetes -# slides: http://osseu17.container.training/ -# video: https://www.youtube.com/playlist?list=PLBAFXs0YjviLrsyydCzxWrIP_1-wkcSHS - -# - date: 2017-10-16 -# city: Copenhagen -# country: dk -# event: DockerCon -# title: Swarm from Zero to Hero -# slides: http://dc17eu.container.training/ - -# - date: 2017-10-16 -# city: Copenhagen -# country: dk -# event: DockerCon -# title: Orchestration for Advanced Users -# slides: https://www.bretfisher.com/dockercon17eu - -# - date: 2017-07-25 -# city: Minneapolis, MN -# country: us -# event: devopsdays -# title: Deploying & Scaling microservices with Docker Swarm -# video: https://www.youtube.com/watch?v=DABbqyJeG_E - -# - date: 2017-06-12 -# city: Berlin -# country: de -# event: DevOpsCon -# title: Deploying and scaling containerized Microservices with Docker and Swarm - -# - date: 2017-05-18 -# city: Portland, OR -# country: us -# event: PyCon -# title: Deploy and scale containers with Docker native, open source orchestration -# video: https://www.youtube.com/watch?v=EuzoEaE6Cqs - -# - date: 2017-05-08 -# city: Austin, TX -# country: us -# event: OSCON -# title: Deploying and scaling applications in containers with Docker - -# - date: 2017-05-04 -# city: Chicago, IL -# country: us -# event: GOTO -# title: Container deployment, scaling, and orchestration with Docker Swarm - -# - date: 2017-04-17 -# city: Austin, TX -# country: us -# event: DockerCon -# title: Orchestration Workshop - -# - date: 2017-03-22 -# city: San Jose, CA -# country: us -# event: Devoxx -# title: Container deployment, scaling, and orchestration with Docker Swarm - -# - date: 2017-03-03 -# city: Pasadena, CA -# country: us -# event: SCALE -# title: Container deployment, scaling, and orchestration with Docker Swarm - -# - date: 2016-12-06 -# city: Boston, MA -# country: us -# event: LISA -# title: Deploying and Scaling Applications with Docker Swarm -# slides: http://lisa16t1.container.training/ -# video: https://www.youtube.com/playlist?list=PLBAFXs0YjviIDDhr8vIwCN1wkyNGXjbbc - -# - date: 2016-10-07 -# city: Berlin -# country: de -# event: LinuxCon -# title: Orchestrating Containers in Production at Scale with Docker Swarm - -# - date: 2016-09-20 -# city: New York, NY -# country: us -# event: Velocity -# title: Deployment and orchestration at scale with Docker - -# - date: 2016-08-25 -# city: Toronto -# country: ca -# event: LinuxCon -# title: Orchestrating Containers in Production at Scale with Docker Swarm - -# - date: 2016-06-22 -# city: Seattle, WA -# country: us -# event: DockerCon -# title: Orchestration Workshop - -# - date: 2016-05-29 -# city: Portland, OR -# country: us -# event: PyCon -# title: Introduction to Docker and containers -# slides: https://us.pycon.org/2016/site_media/media/tutorial_handouts/DockerSlides.pdf -# video: https://www.youtube.com/watch?v=ZVaRK10HBjo - -# - date: 2016-05-17 -# city: Austin, TX -# country: us -# event: OSCON -# title: Deployment and orchestration at scale with Docker Swarm - -# - date: 2016-04-27 -# city: Budapest -# country: hu -# event: CRAFT -# title: Advanced Docker concepts and container orchestration - -# - date: 2016-04-22 -# city: Berlin -# country: de -# event: Neofonie -# title: Orchestration Workshop - -# - date: 2016-04-05 -# city: Stockholm -# country: se -# event: Praqma -# title: Orchestration Workshop - -# - date: 2016-03-22 -# city: Munich -# country: de -# event: Stylight -# title: Orchestration Workshop - -# - date: 2016-03-11 -# city: London -# country: uk -# event: QCON -# title: Containers in production with Docker Swarm - -# - date: 2016-02-19 -# city: Amsterdam +# - date: 2023-02-17 # country: nl -# event: Container Solutions -# title: Orchestration Workshop - -# - date: 2016-02-15 -# city: Paris -# country: fr -# event: Zenika -# title: Orchestration Workshop - -# - date: 2016-01-22 -# city: Pasadena, CA -# country: us -# event: SCALE -# title: Advanced Docker concepts and container orchestration - -# #- date: 2015-11-10 -# # city: Washington DC -# # country: us -# # event: LISA -# # title: Deploying and Scaling Applications with Docker Swarm - -# #2015-09-24-strangeloop - - - -# - title: Introduction to Docker and Containers -# slides: intro-selfpaced.yml.html - -# - title: Container Orchestration with Docker and Swarm -# slides: swarm-selfpaced.yml.html - -# - title: Deploying and Scaling Microservices with Docker and Kubernetes -# slides: kube-selfpaced.yml.html +# city: Apeldoorn +# event: bd +# speaker: mverleun +# title: Introduction to kubernetes +# lang: nl +# slides: https://training.verleun.org/intro-bd-k8s.yml.html#1 +# - date: 2023-02-24 +# country: nl +# city: Apeldoorn +# event: bd +# speaker: mverleun +# title: Introduction to helm and friends +# lang: nl +# slides: https://training.verleun.org/intro-bd-helm.yml.html#1 diff --git a/slides/intro-bd-k8s.yml b/slides/intro-bd-k8s.yml index e8e93c4..5881f5a 100644 --- a/slides/intro-bd-k8s.yml +++ b/slides/intro-bd-k8s.yml @@ -1,7 +1,5 @@ title: | - Triodos Introduction to - Containers and orchestration - with Kubernetes + Introduction to Kubernetes #chat: "[Slack](https://dockercommunity.slack.com/messages/C7GKACWDV)" #chat: "[Gitter](https://gitter.im/jpetazzo/workshop-yyyymmdd-city)" @@ -91,22 +89,22 @@ content: - k8s/setup-overview.md #- k8s/setup-devel.md #- k8s/setup-managed.md - #- k8s/setup-selfhosted.md + - k8s/setup-selfhosted.md - - k8s/kubectl-run.md #- k8s/batch-jobs.md #- k8s/labels-annotations.md - - k8s/kubectl-logs.md - - k8s/deploymentslideshow.md - - k8s/kubectlexpose.md - - k8s/shippingimages.md + # - k8s/kubectl-logs.md + # - k8s/deploymentslideshow.md + # - k8s/kubectlexpose.md + # - k8s/shippingimages.md #- k8s/buildshiprun-selfhosted.md - - k8s/buildshiprun-dockerhub.md - - k8s/ourapponkube.md + # - k8s/buildshiprun-dockerhub.md + # - k8s/ourapponkube.md #- k8s/localkubeconfig.md #- k8s/access-eks-cluster.md #- k8s/accessinternal.md #- k8s/kubectlproxy.md -- - k8s/dashboard.md +- #- k8s/dashboard.md #- k8s/k9s.md #- k8s/tilt.md #- k8s/kubectlscale.md @@ -119,9 +117,9 @@ content: # Bridget hasn't added EFK yet #- k8s/logs-centralized.md - k8s/namespaces.md - - k8s/helm-intro.md + #- k8s/helm-intro.md #- k8s/helm-chart-format.md - - k8s/helm-create-basic-chart.md + #- k8s/helm-create-basic-chart.md #- k8s/helm-create-better-chart.md #- k8s/helm-dependencies.md #- k8s/helm-values-schema-validation.md diff --git a/slides/marco/intro.md b/slides/marco/intro.md new file mode 100644 index 0000000..03fbd00 --- /dev/null +++ b/slides/marco/intro.md @@ -0,0 +1,26 @@ +## Introductions + + + +- Hello! I am: + + - 👴 Marco Verleun (marco.verleun@i-share.nl) + + - 👷🏼‍♂️ Devops/Gitops/Cloud/Container/Cluster/Linux engineer (Pick one) + + - 🎯 Secure clusters (air-gapped) running secure containers + + - 🏢 Employed by i-share (www.i-share.nl) + + +- This presentation is partially based on the excellent work of Jérôme Petazzo. + +- Feel free to interrupt for questions at any time + +--- + +## Exercises + +- Due to time constraints there are no exercises.... diff --git a/slides/secure-containers/sampleapp.md b/slides/secure-containers/sampleapp.md new file mode 100644 index 0000000..307e761 --- /dev/null +++ b/slides/secure-containers/sampleapp.md @@ -0,0 +1,298 @@ +# Which application needs to be secured + +- It is a DockerCoin miner! 💰🐳📦🚢 + +-- + +- No, you can't buy coffee with DockerCoin + +-- + +- How dockercoins works: + + - generate a few random bytes + + - hash these bytes + + - increment a counter (to keep track of speed) + + - repeat forever! + +-- + +- DockerCoin is *not* a cryptocurrency + + (the only common points are "randomness," "hashing," and "coins" in the name) + +--- + +## DockerCoin in the microservices era + +- The dockercoins app is made of 5 services: + + - `rng` = web service generating random bytes + + - `hasher` = web service computing hash of POSTed data + + - `worker` = background process calling `rng` and `hasher` + + - `webui` = web interface to watch progress + + - `redis` = data store (holds a counter updated by `worker`) + +- These 5 services are visible in the application's Compose file, + [docker-compose.yml]( + https://github.com/jpetazzo/container.training/blob/main/dockercoins/docker-compose.yml) + +--- + +## How dockercoins works + +- `worker` invokes web service `rng` to generate random bytes + +- `worker` invokes web service `hasher` to hash these bytes + +- `worker` does this in an infinite loop + +- every second, `worker` updates `redis` to indicate how many loops were done + +- `webui` queries `redis`, and computes and exposes "hashing speed" in our browser + +*(See diagram on next slide!)* + +--- + +class: pic + +![Diagram showing the 5 containers of the applications](images/dockercoins-diagram.png) + +--- + +## How do improve the `docker-compose.yml` file + +Let's pretend we do not want to modify the original `docker-compose.yml` file + +-- + +- Changes here might cause issues with upstream updates. + +- Hard to keep track of differences with merge conflicts + +-- + +Let's override values with `docker-compose.override.yml` + +--- + +## Example in `worker/worker.py` + +```python +redis = Redis("`redis`") + + +def get_random_bytes(): + r = requests.get("http://`rng`/32") + return r.content + + +def hash_bytes(data): + r = requests.post("http://`hasher`/", + data=data, + headers={"Content-Type": "application/octet-stream"}) +``` + +(Full source code available [here]( +https://@@GITREPO@@/blob/8279a3bce9398f7c1a53bdd95187c53eda4e6435/dockercoins/worker/worker.py#L17 +)) + +--- + +class: extra-details + +## Links, naming, and service discovery + +- Containers can have network aliases (resolvable through DNS) + +- Compose file version 2+ makes each container reachable through its service name + +- Compose file version 1 required "links" sections to accomplish this + +- Network aliases are automatically namespaced + + - you can have multiple apps declaring and using a service named `database` + + - containers in the blue app will resolve `database` to the IP of the blue database + + - containers in the green app will resolve `database` to the IP of the green database + +--- + +## Show me the code! + +- You can check the GitHub repository with all the materials of this workshop: +
https://@@GITREPO@@ + +- The application is in the [dockercoins]( + https://@@GITREPO@@/tree/master/dockercoins) + subdirectory + +- The Compose file ([docker-compose.yml]( + https://@@GITREPO@@/blob/master/dockercoins/docker-compose.yml)) + lists all 5 services + +- `redis` is using an official image from the Docker Hub + +- `hasher`, `rng`, `worker`, `webui` are each built from a Dockerfile + +- Each service's Dockerfile and source code is in its own directory + + (`hasher` is in the [hasher](https://@@GITREPO@@/blob/master/dockercoins/hasher/) directory, + `rng` is in the [rng](https://@@GITREPO@@/blob/master/dockercoins/rng/) + directory, etc.) + +--- + +class: extra-details + +## Compose file format version + +*This is relevant only if you have used Compose before 2016...* + +- Compose 1.6 introduced support for a new Compose file format (aka "v2") + +- Services are no longer at the top level, but under a `services` section + +- There has to be a `version` key at the top level, with value `"2"` (as a string, not an integer) + +- Containers are placed on a dedicated network, making links unnecessary + +- There are other minor differences, but upgrade is easy and straightforward + +--- + +## Our application at work + +- On the left-hand side, the "rainbow strip" shows the container names + +- On the right-hand side, we see the output of our containers + +- We can see the `worker` service making requests to `rng` and `hasher` + +- For `rng` and `hasher`, we see HTTP access logs + +--- + +## Connecting to the web UI + +- "Logs are exciting and fun!" (No-one, ever) + +- The `webui` container exposes a web dashboard; let's view it + +.lab[ + +- With a web browser, connect to `node1` on port 8000 + +- Remember: the `nodeX` aliases are valid only on the nodes themselves + +- In your browser, you need to enter the IP address of your node + + + +] + +A drawing area should show up, and after a few seconds, a blue +graph will appear. + +--- + +class: self-paced, extra-details + +## If the graph doesn't load + +If you just see a `Page not found` error, it might be because your +Docker Engine is running on a different machine. This can be the case if: + +- you are using the Docker Toolbox + +- you are using a VM (local or remote) created with Docker Machine + +- you are controlling a remote Docker Engine + +When you run DockerCoins in development mode, the web UI static files +are mapped to the container using a volume. Alas, volumes can only +work on a local environment, or when using Docker Desktop for Mac or Windows. + +How to fix this? + +Stop the app with `^C`, edit `dockercoins.yml`, comment out the `volumes` section, and try again. + +--- + +class: extra-details + +## Why does the speed seem irregular? + +- It *looks like* the speed is approximately 4 hashes/second + +- Or more precisely: 4 hashes/second, with regular dips down to zero + +- Why? + +-- + +class: extra-details + +- The app actually has a constant, steady speed: 3.33 hashes/second +
+ (which corresponds to 1 hash every 0.3 seconds, for *reasons*) + +- Yes, and? + +--- + +class: extra-details + +## The reason why this graph is *not awesome* + +- The worker doesn't update the counter after every loop, but up to once per second + +- The speed is computed by the browser, checking the counter about once per second + +- Between two consecutive updates, the counter will increase either by 4, or by 0 + +- The perceived speed will therefore be 4 - 4 - 4 - 0 - 4 - 4 - 0 etc. + +- What can we conclude from this? + +-- + +class: extra-details + +- "I'm clearly incapable of writing good frontend code!" 😀 — Jérôme + +--- + +## Stopping the application + +- If we interrupt Compose (with `^C`), it will politely ask the Docker Engine to stop the app + +- The Docker Engine will send a `TERM` signal to the containers + +- If the containers do not exit in a timely manner, the Engine sends a `KILL` signal + +.lab[ + +- Stop the application by hitting `^C` + + + +] + +-- + +Some containers exit immediately, others take longer. + +The containers that do not handle `SIGTERM` end up being killed after a 10s timeout. If we are very impatient, we can hit `^C` a second time! +