LinuxParty
En esta guía, veremos cómo adjuntar un volumen persistente en un contenedor docker. Si no tenemos un almacenamiento separado, los datos no persistirán una vez que el contenedor ya no esté en funcionamiento.
Para fines de demostración, vamos a utilizar con un contenedor MYSQL; sus datos se guardarán en /var/lib/mysql dentro del contenedor docker, por lo que nuestro volumen se debe montar de manera obligada en la misma ubicación desde nuestro host docker al contenedor con los requisitos necesarios. Contextos SELinux.
Paso 1: Etiqueta con contexto SELinux para el volumen de la ventana acoplable
Cree un directorio para guardar los datos del contenedor y debe estar etiquetado con " svirt_sandbox_file_t ". Además, debe ser recursivo por el usuario y el grupo 27:27 .
# mkdir /mysql_container # chown -R 27:27 /mysql_container # chcon -t svirt_sandbox_file_t /mysql_container
Paso 2: Montar un volumen
Descarguemos la imagen de MySQL docker para lanzar un contenedor docker
# docker pull mysql
Para conocer las variables de entorno disponibles de la imagen del contenedor MYSQL, navegue hasta
Estamos usando solo por debajo de tres variables de entorno por ahora.
MYSQL_ROOT_USER MYSQL_ROOT_PASSWORD MYSQL_DATABASE
Inicie un contenedor desde la imagen de MySQL en modo de separación en el nombre de " mysql-pro-dbsrv " montando el volumen desde el origen hasta el destino con la opción " -v ". Al seguir podemos asignar una serie de variables que se utilizarán dentro del contenedor. Para asignar variables a usar con “ -e ” la opción.
# docker run --name mysql-pro-dbsrv -d -v /mysql_container:/var/lib/mysql/ -e MYSQL_ROOT_USER=root -e MYSQL_ROOT_PASSWORD=password123 mysql # docker ps
- –name Nombre del contenedor
- -d Lanzando contenedor en modo separar
- -v Enlazar montar un volumen
- -e Establecer variables de entorno
Paso 3: Verificando la variable de entorno y MYSQL DB
Una vez que el contenedor está en funcionamiento, acceda a su shell para verificar los archivos de la base de datos.
# docker exec -it mysql-pro-dbsrv /bin/bash # ls -lthr /var/lib/mysql/
Listar las variables de entorno y hacer un grep
# env | grep MYSQL
Inicie sesión en la base de datos MYSQL con las variables de entorno asignadas.
# mysql -u root -p # exit
Ahora, veamos los archivos relacionados con MYSQL desde el servidor de la ventana acoplable. Los archivos de la base de datos se guardan en la ubicación que se encuentra debajo de un contenedor Docker.
# ls -lthr /mysql_container/
Paso 4: Eliminar el contenedor y los datos de MYSQL
Para eliminar un almacenamiento persistente de Docker debemos seguir los pasos anteriores en orden inverso.
Pero antes de comenzar con la eliminación, primero debemos detener el contenedor y luego eliminar el contenedor, al eliminar todos los archivos de la fuente de enlace y finalmente eliminar la imagen de MySQL.
# docker stop mysql-pro-dbsrv # docker rm mysql-pro-dbsrv # rm -rfv /var/local/mysql # docker rmi mysql
Eso es todo lo que hemos completado con el montaje de un volumen para guardar datos de forma persistente en los contenedores de Docker.

-
CentOS
- Configurar dirección IP estática en RHEL 8 / CentOS 8 Linux
- Cómo migrar CentOS 7 a AlmaLinux 8 usando ELevate Repo
- CERN y Fermilab han anunciado que adoptarán AlmaLinux como su sistema operativo principal.
- Instalar Nvidia Driver en AlmaLinux, Rocky Linux, CentOS, RHEL y Fedora (último controlador patentado)
- Cómo actualizar / migrar de CentOS 8 a AlmaLinux 8.5
- Rocky Linux 9 llega con todo lo necesario para replicar la distro por tu cuenta
- Solucionar Failed to download metadata for repo ‘AppStream’ CentOS / AlmaLinux / RockyLinux / Fedora / RHEL
- Cómo actualizar de CentOS 8 a Centos Stream 8
- Cómo actualizar de CentOS 8 a Rocky Linux 8
- Cómo actualizar de CentOS 8 a RHEL 8
- Avanzando después de CentOS 8 EOL
- Wi-Fi 7: el futuro estándar cuatro veces más rápido que Wi-Fi 6 y que rivalizará con el ancho de banda con los cables.
- Como reiniciar la contraseña (password) en RedHat 7 / CentOS 7
- Cómo migrar de CentOS 8 a Rocky Linux 8
- Rocky Linux el sustituto de CentOS, disponible para su descarga.