Cómo instalar Docker y ejecutar contenedores de Docker en Ubuntu

Cómo instalar Docker y ejecutar contenedores de Docker en Ubuntu

Docker. es una tecnología de virtualización a nivel de sistema operativo de código abierto y popular (comúnmente conocida como “ contenedorización. ) que se ejecuta principalmente en Linux y Windows. Docker. facilita la creación, implementación y ejecución de aplicaciones mediante contenedores.

Con contenedores. los desarrolladores (y administradores del sistema) pueden empaquetar una aplicación con todo lo necesario para ejecutar la aplicación: el código, un tiempo de ejecución, bibliotecas, variables de entorno y archivos de configuración, y enviarlo todo como un solo paquete. ¡Sí, es genial!

En este artículo, le mostraremos cómo instalar Docker CE (Community Edition). crear y ejecutar contenedores Docker en Ubuntu. distribución.

Instalación de Docker CE (Community Edition) en Ubuntu

1.. Para instalar Docker CE. primero, debe eliminar las versiones anteriores de Docker. que se llamaban docker, docker.io o docker-engine del sistema mediante el siguiente comando.

$ sudo apt-get remove docker docker-engine docker .io containerd runc

2.. A continuación, debe configurar el repositorio de Docker para instalar y actualizar Docker desde el repositorio utilizando los siguientes comandos.

$ sudo apt-get update $ curl-fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add-$ sudo add-apt-repository “deb [arch = amd64] https://download.docker.com/linux/ubuntu $ (lsb_release-cs) estable” freestar.config.enabled_slots.push ( locationName: “tecmint_incontent”, slotId: “tecmint_incontent”);

3.. Actualice el índice del paquete apt e instale la última versión de Docker CE. utilizando los siguientes comandos.

$ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io Instalando Docker CE en Ubuntu Leyendo listas de paquetes … Listo Construyendo árbol de dependencias Leyendo información de estado … Listo El Se instalarán los siguientes paquetes adicionales: aufs-tools cgroupfs-mount pigz Se instalarán los siguientes NUEVOS paquetes: aufs-tools cgroupfs-mount containerd.io docker-ce docker-ce-cli pigz 0 actualizado, 6 recién instalado, 0 para eliminar y 167 no actualizado. Necesita obtener 50,7 MB de archivos. Después de esta operación, se utilizarán 243 MB de espacio adicional en disco. ¿Quieres continuar? [S/n] y Obtenga: 1 http://archive.ubuntu.com/ubuntu bionic/universe amd64 pigz amd64 2.4-1 [57.4 kB] Obtenga: 2 https://download.docker.com/linux/ubuntu bionic/estable amd64 containerd.io amd64 1.2.4-1 [19.9 MB] Obtener: 3 http://archive.ubuntu.com/ubuntu bionic/universe amd64 aufs-tools amd64 1: 4.9 + 20170918-1ubuntu1 [104 kB] Obtener : 4 http://archive.ubuntu.com/ubuntu bionic/universe amd64 cgroupfs-mount all 1.4 [6,320 B] Obtenga: 5 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce-cli amd64 5: 18.09.3 ~ 3-0 ~ ubuntu-bionic [13.1 MB] Obtenga: 6 https://download.docker.com/linux/ubuntu bionic/stable amd64 docker-ce amd64 5: 18.09.3 ~ 3-0 ~ ubuntu-bionic [17.4 MB] Obtenido 50.7 MB en 7s (7779 kB/s) …

4.. Después de instalar exitosamente el paquete Docker CE. el servicio debe iniciarse y habilitarse automáticamente para iniciarse en el inicio del sistema, puede verificar su estado usando el siguiente comando.

$ sudo systemctl status docker Comprobando el estado de Docker CE ● docker.service-Motor contenedor de aplicaciones Docker cargado: cargado (/lib/systemd/system/docker.service; habilitado; preset del proveedor: habilitado) Activo: activo (en ejecución) desde mié 2019-03-06 08:06:42 UTC; 2min 18s ago Docs: https://docs.docker.com Main PID: 5274 (dockerd) Tareas: 8 CGroup:/system.slice/docker.service └─5274/usr/bin/dockerd-H fd://–containerd =/run/containerd/containerd.sock Mar 06 08:06:41 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 41.562587408Z” level = warning msg = “Su kernel no soporta cgroup rt runtime “Mar 06 08:06:41 tecmint dockerd [5274]: time =” 2019-03-06T08: 06: 41.562767803Z “level = warning msg =” Su kernel no soporta cgroup blkio weight “Mar 06 08:06 : 41 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 41.562966844Z” level = warning msg = “Su kernel no es compatible con cgroup blkio weight_device” Mar 06 08:06:41 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 41.565298457Z” level = info msg = “Cargando contenedores: inicio”. Mar 06 08:06:41 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 41.950942467Z” level = info msg = “El puente predeterminado (docker0) está asignado con una dirección IP 172.17.0.0/16. La opción de demonio–bip se puede usar para establecer una preferencia. Mar 06 08:06:42 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 42.036964493Z” level = info msg = “Cargando contenedores: hecho. “Mar 06 08:06:42 tecmint dockerd [5274]: time =” 2019-03-06T08: 06: 42.156279378Z “level = info msg =” Docker daemon “commit = 774a1f4 graphdriver (s) = overlay2 version = 18.09. 3 Mar 06 08:06:42 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 42.157145045Z” level = info msg = “Daemon ha completado la inicialización” Mar 06 08:06:42 tecmint systemd [1 ]: Se inició el motor de contenedor de la aplicación Docker. Mar 06 08:06:42 tecmint dockerd [5274]: time = “2019-03-06T08: 06: 42.224229999Z” level = info msg = “API listen on/var/run/docker .sock “

5.. Finalmente, verifique que Docker CE. esté instalado correctamente ejecutando la imagen hello-world.

$ sudo docker run hello-wor ld Verificar la instalación de Docker CE ¡Hola desde Docker! Este mensaje muestra que su instalación parece estar funcionando correctamente. Para generar este mensaje, Docker siguió los siguientes pasos: 1. El cliente de Docker se puso en contacto con el demonio de Docker. 2. El demonio de Docker extrajo la imagen “hello-world” del Docker Hub. (amd64) 3. El demonio de Docker creó un nuevo contenedor a partir de esa imagen que ejecuta el ejecutable que produce la salida que está leyendo actualmente. 4. El demonio de Docker transmitió esa salida al cliente de Docker, que la envió a su terminal. Para probar algo más ambicioso, puede ejecutar un contenedor de Ubuntu con: $ docker run-it ubuntu bash Comparta imágenes, automatice flujos de trabajo y más con una ID de Docker gratuita: https://hub.docker.com/Para obtener más ejemplos e ideas, visite: https://docs.docker.com/get-started/

Aprenda los comandos básicos de Docker en Ubuntu

6.. Para obtener información sobre Docker. ejecute el siguiente comando.

$ sudo docker info. Versión del kernel: 5.0.0-050000-generic Sistema operativo: Ubuntu 18.04.1 LTS OSType: Linux Arquitectura: CPU x86_64 : 1 Memoria total: 1.452GiB Nombre: tecmint ID: FWSB: IRIF: DYL7: PRB5: Y66E: 37MY: ISPO: HZVY: 6YJO: 2IYL: TO6Y: GNB7 Docker Root Dir:/var/lib/docker Debug Mode (cliente) : falso Modo de depuración (servidor): falso Registro: https://index.docker.io/v1/Etiquetas: Experimental: falso Registros inseguros: 127.0.0.0/8 Restauración en vivo habilitada: falso Licencia de producto: Community Engine

7.. Para obtener información sobre Versión de Docker. ejecute el siguiente comando.

$ sudo versión de Docker. Cliente: Versión: 18.09.3 Versión de API: 1.39 Versión de Go: go1.10.8 Confirmación de Git: 774a1f4 Construido: Thu Feb 28 06:53:11 2019 OS/Arch: linux/amd64 Experimental: false Servidor: Docker Engine-Community Engine: Versión: 18.09.3 Versión API: 1.39 (versión mínima 1.12) Versión Go: go1.10.8 Confirmación de Git: 774a1f4 Construido: Thu Feb 28 05:59:55 2019 OS/Arch: linux/amd64 Experimental: false

8.. Para obtener una lista de todos los comandos Docker disponibles, ejecute Docker en su Terminal.

$ docker. Uso: docker [OPCIONES] COMANDO Un tiempo de ejecución autosuficiente para contenedores Opciones:–config string Ubicación de los archivos de configuración del cliente (predeterminado “/home/tecmint/.docker”)-D,–debug Habilita el modo de depuración-H,–host list Daemon socket (s) a los que conectarse-l,–log-level string Establece el nivel de registro (“debug” | “info” | “warn” | “error” | “fatal”) (“información” predeterminada)–tls Use TLS; implícito por–tlsverify–tlscacert string Certificados de confianza firmados solo por esta CA (predeterminado “/home/tecmint/.docker/ca.pem”)–tlscert string Ruta al archivo de certificado TLS (predeterminado “/home/tecmint/. docker/cert.pem “)–tlskey string Ruta al archivo de clave TLS (predeterminado”/home/tecmint/.docker/key.pem “)–tlsverify Use TLS y verifique el-v remoto,–version Imprima la información de la versión y salir Comandos de administración: constructor Administrar configuración de compilaciones Administrar contenedores de configuración de Docker Administrar motor de contenedores Administrar la imagen del motor de Docker Administrar red de imágenes Administrar nodo de redes Administrar plugin de nodos de Swarm Administrar complementos secretos Administrar servicio de secretos de Docker Administrar pila de servicios Administrar pilas de Docker enjambre Administrar sistema de enjambre Administrar Docker confianza Administrar la confianza en el volumen de imágenes de Docker Administrar volúmenes …

Descargar una imagen de Docker en Ubuntu

9.. Para ejecutar un contenedor Docker, primero debe descargar una imagen de Docker Hub; proporciona imágenes gratuitas de sus repositorios.

Para Por ejemplo, para descargar una imagen de Docker llamada CentOS 7, ejecute el siguiente comando.

$ sudo docker search centos. NOMBRE DESCRIPCIÓN ESTRELLAS OFICIAL AUTOMATIZADO centos La compilación oficial de CentOS. 5227 [OK] ansible/centos7-ansible Ansible en Centos7 120 [OK] jdeathe/centos-ssh CentOS-6 6.10 x86_64/CentOS-7 7.5.1804 x86… 107 [OK] consol/centos-xfce-vnc Contenedor de Centos con ” headless “sesión VNC … 81 [OK] imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 50 [OK] centos/mysql-57-centos7 MySQL 5.7 Servidor de base de datos SQL 47 tutum/centos Imagen de ventana acoplable CentOS simple con acceso SSH 43 gluster/gluster-centos Imagen oficial de GlusterFS [CentOS-7 + Glust… 40 [OK] openshift/base-centos7 Una imagen base derivada de Centos7 para Source-To-I … 39 centos/postgresql-96-centos7 PostgreSQL es una plataforma avanzada Object-Relational … 37 centos/python-35-centos7 para construir y ejecutar Python 3.5 … 33 kinogmt/centos-ssh CentOS con SSH 26 [ Aceptar] openshift/jenkins-2-centos7 Una imagen Jenkins v2.x basada en Centos7 para usar con … 20 centos/php-56-centos7 Plataforma para compilar y ejecutar PHP 5.6 ap … 19 pivotaldata/centos-gpdb-dev Imagen CentOS para GPDB desarrollo. Nombres de etiqueta… 10 openshift/wildfly-101-centos7 Una imagen de WildFly v10.1 basada en Centos7 para usar… 6 openshift/jenkins-1-centos7 DESPRECADO: Una imagen de Jenkins v1.x basada en Centos7… 4 imagen de Centos base de darksheer/centos Actualizado cada hora 3 [OK] pivotaldata/centos Base centos, refrescado un poco con un Do… 2 pivotaldata/centos-mingw Usando la cadena de herramientas mingw para compilar t… 2 pivotaldata/centos-gcc-toolchain CentOS con una cadena de herramientas, pero no afiliado wi… 1 openshift/wildfly-81-centos7 Una imagen de WildFly v8.1 basada en Centos7 para usar con… 1 blacklabelops/centos CentOS Base Image! ¡Construido y actualizado diariamente! 1 [OK] smartentry/centos centos con smartentry 0 [OK] jameseckersall/sonarr-centos Sonarr en CentOS 7 0 [OK]

10.. Después de determinar la imagen que desea ejecutar según según sus requisitos, descárguelo localmente ejecutando el siguiente comando (en este caso, se descarga y usa una imagen de CentOS. .

$ docker pull centos. Usando la etiqueta predeterminada : último último: Extracción de biblioteca/centos a02a4930cb5d: Extracción de resumen completo: sha256: 184e5f35598e333bfa7de10d8fb1cebb5ee4df5bc0f970bf2b1e7c7345136426 Estado: imagen más reciente descargada para centos: último en la lista de imágenes Docker disponibles en el host 11. el siguiente comando.

$ sudo docker images. ID DE IMAGEN DE ETIQUETA DE REPOSITORIO TAMAÑO CREADO hello-world último fce289e99eb9 hace 2 meses 1.84kB centos último 1e1148e4cc2c hace 3 meses 202MB

12.. Si ya no desea una imagen de Docker. y usted puede eliminarlo usando el siguiente comando.