Upgrade to Pro — share decks privately, control downloads, hide ads and more …

The First Journey from Docker to Podman

D907136acebc72f1df878541b26f271a?s=47 Phil Huang
December 21, 2019

The First Journey from Docker to Podman


Phil Huang

December 21, 2019


  1. The First Journey from Docker to Podman Phil Huang 黃秉鈞

    <pichuang@pichuang.com.tw> SDN x Cloud Native Meetup #23 , Taiwan, Dec. 21, 2019
  2. # whois Phil Huang 黃秉鈞 • 社群斜槓 青年 青壯年 單身

    ◦ SDNDS-TW ◦ Cloud Native Taiwan User Group (CNTUG) • 任職於 Red Hat Solution Architect ◦ Ansible IT Automation ◦ OpenShift Container Platform ◦ Software-Defined Networking (SDN) ◦ Network Function Virtualization (NFV) • Blog ◦ https://blog.pichuang.com.tw Ref: https://www.linkedin.com/in/phil-huang-09b09895/
  3. Specical Thanks - 天瓏書局 Ref: https://www.tenlong.com.tw/

  4. Specical Thanks - HackMD Ref: https://hackmd.io/c/tutorials/%2Fs%2Ftutorials

  5. First of All, THANKS YOU, Docker!

  6. Ref: https://zwischenzugs.com/2019/07/27/goodbye-docker-purging-is-such-sweet-sorrow/

  7. Say Hello to Podman, Buildah and Skopeo Ref: https://www.redhat.com/en/blog/rhel-8-enables-containers-tools-software-craftsmanship-0 https://events19.linuxfoundation.org/wp-content/uploads/2018/07/OSS-Japan-SlidesPodman-Buildah-and-Quarkus-The-Latest-in-Linux-Container

  8. Please READ it again • Docker Registry => Container Registry

    • Docker Images => Container Images • Docker Container => OCI Container • Dockerfile => Containerfile (NEW!) Ref: https://dwalsh.fedorapeople.org/ReplacingDockerWithPodman.pdf OCI: Open Container Initiative
  9. All Demo Code in here • GitHub: https://github.com/pichuang/debug-container • Quay:

  10. Q1: How to start podman journey? 1. Prepare a Containerfile

    (a.k.a Dockerfile) 2. Install packages yum install podman buildah skopeo -y 3. That’s all
  11. Q2: How to build a container from Containerfile? A: build

    bud -t REPO/NAME:TAG bud = build-using-dockerfile
  12. Q3: How to run the container image? A: podman run

    --rm -it --name NAME REPO/NAME:TAG
  13. Q4: How to inspect the container image? A: skopeo inspect

  14. Q5: How to running containers with systemd servcies? A1: podman

    generate systemd --name NAME or A2: Gist Sample <- personally prefer Ref: https://www.redhat.com/sysadmin/podman-shareable-systemd-services
  15. Q6: How to replace docker command easily? A1: alias docker=podman

    or A2: yum install podman-docker -y
  16. Q7: What is the missing commands in podman? Those Docker

    commands currently do not have equivalents in podman • docker {network, node, plugin, secret, service, stack, swarm} • docker container {update, rename} Ref: https://github.com/containers/libpod/blob/master/transfer.md#missing-commands-in-podman
  17. Q8: Does podman can have a remote API daemon? •

    First, Podman is a daemonless container engine • Varlink - a remote API for podman Ref: https://github.com/containers/libpod/blob/master/docs/source/markdown/podman-varlink.1.md Varlink: Remote API 3rd Party Services
  18. Q9: Support docker-compose? • Alternative project: podman-compose Ref: https://github.com/containers/podman-compose/tree/devel/examples

  19. Q10: What is the next? Ref: https://blog.pichuang.com.tw/20190715-troubleshooting-from-container-to-any/

  20. Q10: What is the next? Ref: https://learn.openshift.com/subsystems/

  21. Q11: How to run a rootless container? • Example -

    e-minguez/ocp4-upi-bm-pxeless-staticips Ref: https://github.com/containers/libpod/blob/master/docs/tutorials/rootless_tutorial.md https://indico.cern.ch/event/757415/contributions/3421994/attachments/1855302/3047064/Podman_Rootless_Containers.pdf
  22. References • Dockerless, part 1: Which tools to replace Docker

    with and why 簡中 • 再见 Docker,是时候拥抱下一代容器工具了 • Podman 介紹 - Gene Workshop • Hwchiu Learning Note • Kyle Bai’s Blog • Twitter: Scott McCarty <- Highly Recommend ◦ https://crunchtools.com/files/2019/05/Linux-Container-Internals-2.0.pdf
  23. Q&A 台上一小時,台下三日夜 社群正向回饋,需要一起參與