Instalar Docker CE en Centos 7
Hoy voy a explicaros como se instala Docker Community Edition (CE) o Docker CE sobre Centos 7. Se trata de la versión libre del proyecto Docker.
Para empezar todo tipo de instalación de un componente en un sistema linux, lo ideal es lanzar la actualización del sistema operativo que va a albergar contenedores:
1 |
yum clean all && yum -y update |
Instalamos sus dependencias:
1 |
yum install -y yum-utils device-mapper-persistent-data lvm2 |
Comenzará el proceso de instalación:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
[root@centos ~]# yum install -y yum-utils device-mapper-persistent-data lvm2 Complementos cargados:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirror.librelabucm.org * epel: mirror.imt-systems.com * extras: mirror.gadix.com * updates: mirror.librelabucm.org El paquete yum-utils-1.1.31-50.el7.noarch ya se encuentra instalado con su versión más reciente El paquete device-mapper-persistent-data-0.7.3-3.el7.x86_64 ya se encuentra instalado con su versión más reciente Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete lvm2.x86_64 7:2.02.180-10.el7_6.3 debe ser actualizado ---> Paquete lvm2.x86_64 7:2.02.180-10.el7_6.7 debe ser una actualización --> Procesando dependencias: lvm2-libs = 7:2.02.180-10.el7_6.7 para el paquete: 7:lvm2-2.02.180-10.el7_6.7.x86_64 --> Ejecutando prueba de transacción ---> Paquete lvm2-libs.x86_64 7:2.02.180-10.el7_6.3 debe ser actualizado ---- |
Necesitaremos agregar el repositorio personalizado para docker:
1 |
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo |
Lanzamos la instalación:
1 2 3 4 5 |
[root@centos ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo Complementos cargados:fastestmirror, langpacks adding repo from: https://download.docker.com/linux/centos/docker-ce.repo grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo repo saved to /etc/yum.repos.d/docker-ce.repo |
Así tendremos acceso al paquete que necesitamos, que no viene por defecto. Y lanzamos su instalación (es la versión estable. Podéis también optar por la versión edge o de test):
1 |
yum install -y docker-ce |
Comienza el proceso:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
[root@centos ~]# yum install -y docker-ce Complementos cargados:fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirror.librelabucm.org * epel: mirror.hostnet.nl * extras: mirror.gadix.com * updates: mirror.librelabucm.org docker-ce-stable | 3.5 kB 00:00:00 (1/2): docker-ce-stable/x86_64/primary_db | 27 kB 00:00:05 (2/2): docker-ce-stable/x86_64/updateinfo | 55 B 00:00:05 Resolviendo dependencias --> Ejecutando prueba de transacción ---> Paquete docker-ce.x86_64 3:18.09.5-3.el7 debe ser instalado --> Procesando dependencias: container-selinux >= 2.9 para el paquete: 3:docker-ce-18.09.5-3.el7.x86_64 --> Procesando dependencias: containerd.io >= 1.2.2-3 para el paquete: 3:docker-ce-18.09.5-3.el7.x86_64 --> Procesando dependencias: docker-ce-cli para el paquete: 3:docker-ce-18.09.5-3.el7.x86_64 --> Ejecutando prueba de transacción ---> Paquete container-selinux.noarch 2:2.74-1.el7 debe ser instalado ---> Paquete containerd.io.x86_64 0:1.2.5-3.1.el7 debe ser instalado ---> Paquete docker-ce-cli.x86_64 1:18.09.5-3.el7 debe ser instalado --> Resolución de dependencias finalizada Dependencias resueltas ========================================================================================================================================================= Package Arquitectura Versión Repositorio Tamaño ========================================================================================================================================================= Instalando: docker-ce x86_64 3:18.09.5-3.el7 docker-ce-stable 19 M Instalando para las dependencias: container-selinux noarch 2:2.74-1.el7 extras 38 k containerd.io x86_64 1.2.5-3.1.el7 docker-ce-stable 22 M docker-ce-cli x86_64 1:18.09.5-3.el7 docker-ce-stable 14 M ---- |
Una buena práctica podría ser darle a un usuario que no sea root permisos sobre el grupo docker:
1 |
usermod -aG docker runzue |
Arrancamos el servicio o demonio:
1 |
systemctl start docker |
Y una vez arrancado y validado, creamos un sencillo contenedor:
1 |
docker run hello-world |
Que nos dará este resultado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
[root@centos ~]# docker run hello-world Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 1b930d010525: Pull complete Digest: sha256:92695bc579f31df7a63da6922075d0666e565ceccad16b59c3374d2cf4e8e50e Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal. To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bash Share images, automate workflows, and more with a free Docker ID: https://hub.docker.com/ For more examples and ideas, visit: https://docs.docker.com/get-started/ |
Para terminar, nos aseguramos que el servicio arrancará en el reinicio del servidor:
1 |
systemctl enable docker |
Veréis este resultado:
1 2 |
[root@centos ~]# systemctl enable docker Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service. |
¿Te ha gustado la entrada SÍGUENOS EN TWITTER?
Te ha gustado la entrada SGUENOS EN TWITTER O INVITANOS A UN CAFE?