Cómo Instalar y Usar Podman en Ubuntu 18.04
Podman es un motor de integración de contenedores que se puede usar para desarrollar, administrar y ejecutar contenedores OCI en sistemas operativos basados en Linux. Usa un modelo fork/exec para ejecutar contenedores y puede ejecutarse sin privilegios de root.
En este tutorial, aprenderemos cómo instalar Podman en Ubuntu 18.04.
Requisitos
- Un servidor cloud corriendo con Ubuntu 18.04.
- A password de root en tu servidor en la nube.
Empezamos
Antes de empezar, te recomendamos actualizar tu sistema con la última versión. Puedes hacerlo con el siguiente comando:
# apt-get update -y
# apt-get upgrade -y
Una vez que tu sistema esté actualizado, puedes continuar con el siguiente paso.
Instalar Podman
Por defecto, Podman no está disponible en el repositorio predeterminado de Ubuntu 18.04. Por lo que tendrás que agregar el repositorio.
Puedes hacerlo con el siguiente comando:
# apt-get install software-properties-common -y
# add-apt-repository -y ppa:projectatomic/ppa
Para continuar, instala Podman con el siguiente comando:
# apt-get install podman -y
Una vez que Podman haya sido instalado, puedes comprobar toda la información con el siguiente comando:
# podman info
Deberías ver el siguiente resultado:
host: BuildahVersion: 1.8.3 Conmon: package: 'conmon: /usr/bin/conmon' path: /usr/bin/conmon version: 'conmon version 0.3.0, commit: unknown' Distribution: distribution: ubuntu version: "18.04" MemFree: 338325504 MemTotal: 1033875456 OCIRuntime: package: 'cri-o-runc: /usr/bin/runc' path: /usr/bin/runc version: 'runc version spec: 1.0.1-dev' SwapFree: 1709174784 SwapTotal: 1709174784 arch: amd64 cpus: 1 hostname: ubuntu1804 kernel: 4.15.0-20-generic os: linux rootless: false uptime: 17m 40.72s registries: blocked: null insecure: null search: null store: ConfigFile: /etc/containers/storage.conf ContainerStore: number: 0 GraphDriverName: overlay GraphOptions: null GraphRoot: /var/lib/containers/storage GraphStatus: Backing Filesystem: extfs Native Overlay Diff: "true" Supports d_type: "true" Using metacopy: "false" ImageStore: number: 0 RunRoot: /var/run/containers/storage VolumePath: /var/lib/containers/storage/volumes
Trabajando con Podman
Antes de empezar, deberás desactivar los registros docker.io en el archivo
/etc/containers/registries.conf.
Puedes hacerlo con el siguiente comando:
# echo -e "[registries.search]\nregistries = ['docker.io']" | sudo tee /etc/containers/registries.conf
A continuación, descarga y ejecuta la imagen de “hello-world” con el siguiente comando:
# podman run hello-world
Deberías ver el siguiente resultado:
Trying to pull docker.io/library/hello-world...Getting image source signatures Copying blob 1b930d010525 done Copying config fce289e99e done Writing manifest to image destination Storing signatures Hello from Docker!
Este mensaje muestra que tu instalación está funcionando correctamente.
Para generar este mensaje, Docker ha realizado los siguientes pasos:
- El cliente Docker ha contactado con el demonio Docker.
- El demonio Docker ha cogido la imagen “hello-world” del Hub de Docker.
- El demonio de Docker ha creado un nuevo contenedor de esa imagen que corre en el ejecutable que produce el resultado que estás leyendo.
- El demonio de Docker ha llevado ese resultado al cliente Docket that output to the Docker client, which sent it to your terminal.
Para intentar algo más ambicioso, puedes correr un contenedor Ubuntu con:
# docker run -it ubuntu bash
Comparte imágenes, automatiza workflows y mucho más con un ID de Docker gratuito: https://hub.docker.com/
Para más ejemplos e ideas, puedes visitar: https://docs.docker.com/get-started/
A continuación, puedes ver la lista de imágenes descargadas con el siguiente comando:
# podman images
Deberías ver el siguiente resultado:
REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/library/hello-world latest fce289e99eb9 6 months ago 6.14 kB
También puedes ver el contenedor que está corriendo con el siguiente comando:
# podman ps -a
Deberías ver el siguiente resultado:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c6c20824a698 docker.io/library/hello-world:latest /hello 3 minutes ago Exited (0) 3 minutes ago upbeat_elion
Puedes arrancar y parar el contenedor con el siguiente comando:
# podman stop --latest
# podman start --latest
Para eliminar el contenedor, utiliza el siguiente comando:
# podman rm --latest
Conclusión
¡Felicidades! Has instalado con éxito Podman en el servidor Ubuntu 18.04. Ahora puedes crear, ejecutar y mantener fácilmente contenedores utilizando Podman. Para obtener más información,
puedes consultar la documentación de Podman en https://github.com/containers/libpod/blob/master/docs/tutorials/podman_tutorial.md